【问题标题】:add custom header to HttpRequestHeaders将自定义标头添加到 HttpRequestHeaders
【发布时间】:2019-07-03 13:12:13
【问题描述】:

我正在尝试向以下对象添加自定义标头:

var requestMessage = new HttpRequestMessage(method, url);
requestMessage.Headers.Add(key, value);

如果 key 等于 Host 或 Connection 等现有标头,则一切正常。 但是,如果我尝试添加像 MyCustomHeader 这样的自定义标头,则会引发异常。我需要使用此自定义标头向目标发送请求,正如目标服务器所期望的那样。 我查看了 httpheaders 对象 (https://docs.microsoft.com/en-us/dotnet/api/system.net.http.headers.httpheaders?view=netframework-4.8) 的文档,特别是 add 方法 (https://docs.microsoft.com/en-us/dotnet/api/system.net.http.headers.httpheaders.add?view=netframework-4.8#System_Net_Http_Headers_HttpHeaders_Add_System_String_System_String_),似乎没有任何东西可用于添加自定义标头。

【问题讨论】:

  • 服务器是否接受您尝试发送的标头?
  • 您遇到的完整异常是什么?
  • @JakeSteffen,是的,只是没有发送请求,因为添加自定义标头会引发异常。
  • 试试'X-My-Custom-Header'
  • 添加try/catch 并在catch 中添加断点?您使用的键/值的值是什么?

标签: c# asp.net http-headers


【解决方案1】:

通过 HttpClient 类完成:

尝试以下方法:

var client = new HttpClient(); client.DefaultRequestHeaders

【讨论】:

    猜你喜欢
    • 2016-10-18
    • 2012-04-23
    • 2017-02-15
    • 2016-11-14
    • 1970-01-01
    • 2017-11-11
    • 1970-01-01
    • 2023-01-02
    • 2018-10-04
    相关资源
    最近更新 更多