微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 HTTP 客户端 C# 中不处理位置标头中的相对 URL

如何解决在 HTTP 客户端 C# 中不处理位置标头中的相对 URL

我使用 HTTP 客户端来获取 URL 的状态。认情况下,AllowAutoRedirect 为 True

它会自动处理 URL 重定向。但如果位置标头返回绝对 URL,它就会失败。

它停止请求并返回最后一个位置标头 url 状态。

示例:

URL A ("http://www.alphabets.com/a") -> 重定向 -> URL B ("http://www.alphabets.com/b")

URL B ("http://www.alphabets.com/b") -> 重定向 -> URL C ("http://www.alphabets.com/c")

URL C ("http://www.alphabets.com/c") -> 重定向 -> URL D ("http://www.alphabets.com/d")

URL D ("http://www.alphabets.com/d")-> 重定向 -> URL E ("/e") (E 是相对 URL)

URL D 状态代码作为状态代码返回。但实际重定向的 URL 是 F。

有什么办法可以克服这种情况并获得 URL F 作为重定向的 URL。

注意:

可以通过设置AllowAutoRedirect=false并手动处理重定向来实现。但我想找到,有没有办法用 AllowAutoRedirect=True

来实现这一点

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。