go - http.NewRequest 只允许一个重定向
问题描述
我来自这个问题,如果我根本不想重定向,答案就有效:
client := &http.Client{
CheckRedirect: func(req *http.Request, via []*http.Request) error {
return http.ErrUseLastResponse
},
}
但是我怎样才能在这里只允许一个重定向?
解决方案
正如文档所述:
参数 req 和 via 是即将到来的请求和已经发出的请求,最早的在前。
因此,在第一次重定向时,len(via)
将为 1。如果您返回错误 if len(via)>1
,则其他请求应该会失败。
推荐阅读
- python - 为什么此 api 请求仅在在线部署时才返回超时?
- facebook-graph-api - Facebook 移动应用程序如何签署对 Facebook 服务器的 API 调用以进行身份验证?
- ios - 快速执行队列
- python - 切换按钮以更改其类之外的某些东西的属性 - Kivy
- sql - 选择行序列
- nsis - NSIS 自定义页面 MessageBox 跳转到下一页
- scheme - 为什么是这样的 if 语句?
- python - 蟒蛇/美丽的汤。从中提取所有文本
- h2 和 h3 标签之间的标签
- javascript - 刷新并转到php上的上一页
- python - Pandas:计算数据框中所有行与特定行之间的差异