为什么 HttpRequestMessage.Content.Headers 不包含与请求关联的标头
本文关键字:关联 请求 包含 HttpRequestMessage Content Headers 为什么 | 更新日期: 2023-09-27 17:56:34
我有一个Web API应用程序,我们将HttpRequestMessage.Content转发到处理请求的其他方法。所需的值集之一是作为请求的一部分发送的标头。
当我查看 HttpRequestMessage.Headers.headerStore 时,我看到发送到请求的所有标头。但是当我查看 HttpRequestMessage.Content.Headers.headerStore 时,我只看到一些默认标头。
为什么 HttpRequestMessage.Content.headerStore 不包含与请求关联的所有标头?
请求标头和内容标头具有不同的用途。
虽然请求标头包含有关请求本身和客户端(调用方)的信息,但内容标头描述"实体"或其元数据。
看看示例 http 请求:
POST /some/url HTTP/1.1
Host: someHost
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36
request Accept: application/json, text/plain, */*
headers Accept-Encoding: gzip,deflate
Connection: keep-alive
Referer: url
Content-Type: multipart/form-data; boundary=----------564564546545645
Content-Length: 462560
------------564564546545645
content Content-Disposition: form-data; name="file"; filename="1.png"
headers Content-Type: image/png
.PNG
......................;
------------564564546545645