c# HTTP Multipart MIME 解析器

Posted

技术标签:

【中文标题】c# HTTP Multipart MIME 解析器【英文标题】:c# HTTP Multipart MIME parser 【发布时间】:2013-06-06 07:58:45 【问题描述】:

我收到来自 HTTP 调用的 Multipart MIME 响应,需要提取这些部分。我正在寻找一种简单的方法来做到这一点。

我正在使用 System.Net.Http 方法来获取内容,但是提取响应部分让我感到困惑。

HttpClient zClient = new HttpClient();
Uri zAddress = new Uri("http://someDomain.com");

HttpContent content = new StringContent(sb.ToString());
HttpResponseMessage response = zClient.PostAsync(zAddress, content).Result;
if (response.IsSuccessStatusCode)

    // This returns true
    bool zIsMime = response.Content.IsMimeMultipartContent();

    // How do I get the message parts here. This ReadAsMultipartAsync method is confusing me. 
    ReadAsMultipartAsync(HttpContent) ???? 


else

    Console.WriteLine("0 (1)", (int)response.StatusCode, response.ReasonPhrase);

【问题讨论】:

【参考方案1】:
MultipartMemoryStreamProvider zMIME = await response.Content.ReadAsMultipartAsync();

这是我正在寻找的简单步骤。

【讨论】:

以上是关于c# HTTP Multipart MIME 解析器的主要内容,如果未能解决你的问题,请参考以下文章

使用 Email::MIME 和 multipart/mixed with subparts 解析电子邮件

Multipart 和 MIME 内容类型有啥区别?

纯golang爬虫实战--使用mime/multipart传输附件

MIME 电子邮件多部分解析器 [重复]

如何在 axios 中为 POST - multipart/form-data 设置 MIME 类型?

使用 mime multipart 从文件中提取内容