【问题标题】:Does WebClient follow Location headers when getting a 201 response?WebClient 在收到 201 响应时是否遵循 Location 标头?
【发布时间】:2010-11-21 19:13:51
【问题描述】:

.NET WebClient 是否遵循应与201 Created 响应一起发送的 Location 标头?如果是,有没有办法禁用它?

此外,我正在寻找一种方法来检索 Location 标头的值,因为我想向用户显示创建的资源的链接。

【问题讨论】:

    标签: .net rest redirect webclient


    【解决方案1】:

    检查了 .NET 框架源代码,答案如下: WebClient 使用 HttpWebRequest,它使用以下逻辑进行以下重定向:

    else if (AllowAutoRedirect && (
        ResponseStatusCode==HttpStatusCode.Ambiguous          || // 300
        ResponseStatusCode==HttpStatusCode.Moved              || // 301
        ResponseStatusCode==HttpStatusCode.Redirect           || // 302
        ResponseStatusCode==HttpStatusCode.RedirectMethod     || // 303
        ResponseStatusCode==HttpStatusCode.RedirectKeepVerb ))   // 307
    {
    

    Location 标头的值在 WebClient 的 ResponseHeaders 集合中(或使用异步时的事件参数)。

    【讨论】:

      猜你喜欢
      • 2013-12-14
      • 2014-11-29
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      • 2021-02-17
      • 2016-07-16
      • 2021-09-23
      • 1970-01-01
      相关资源
      最近更新 更多