仅遵循内部重定向
Follow only internal redirection
是否可以将 HttpClient 设置为仅在同一域上的重定向时才遵循重定向?
我想我们可以通过某种方式检查重定向的 url 并手动检查它是否在同一域中来做到这一点(不确定我们是否真的可以这样做)。
或者也许有一个我没有找到自动执行此操作的选项?
不,没有仅遵循某些重定向的选项。您需要通过检查响应中的 "location" header 来禁用自动 "follow redirect" 并自行处理 301/302 响应。
见
- How does one configure HttpClient not to automatically redirect when it receives a 301 HTTP Status Code? 如何使用
new HttpClient(new HttpClientHandler { AllowAutoRedirect = false})
禁用自动重定向
- HttpClient retrieve all headers 如何从
response.Headers.GetValues("Location")
的响应中获取 headers
是否可以将 HttpClient 设置为仅在同一域上的重定向时才遵循重定向?
我想我们可以通过某种方式检查重定向的 url 并手动检查它是否在同一域中来做到这一点(不确定我们是否真的可以这样做)。 或者也许有一个我没有找到自动执行此操作的选项?
不,没有仅遵循某些重定向的选项。您需要通过检查响应中的 "location" header 来禁用自动 "follow redirect" 并自行处理 301/302 响应。
见
- How does one configure HttpClient not to automatically redirect when it receives a 301 HTTP Status Code? 如何使用
new HttpClient(new HttpClientHandler { AllowAutoRedirect = false})
禁用自动重定向
- HttpClient retrieve all headers 如何从
response.Headers.GetValues("Location")
的响应中获取 headers