代码之家  ›  专栏  ›  技术社区  ›  ThiefMaster

WebClient在获得201响应时是否遵循位置头?

  •  1
  • ThiefMaster  · 技术社区  · 13 年前

    .NET网络客户端是否遵循 位置 应与 201 Created 回应?如果是,有没有办法禁用它?

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

    1 回复  |  直到 13 年前
        1
  •  3
  •   ThiefMaster    13 年前

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

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

    的价值 位置 标题在 ResponseHeaders WebClient的集合(或使用async时的事件参数)。