有没有办法在实现选项之前的版本中复制cURL中的--post302选项?

时间:2013-03-23 15:00:28

标签: curl

标题几乎说明了一切。我正在使用选项-L强制cURL遵循重定向,但服务器正在将POST转换为GET。 --post302修复了它,但我无法访问我需要的版本7.19+。我可以用另一组选项复制该行为吗?

1 个答案:

答案 0 :(得分:2)

简短回答:不,但请继续阅读。

更长的答案:问题是-L选项使curl自动遵循3xx响应的HTTP重定向。当服务器返回302时,过去通过curl以某种方式处理它(它改变并对下一个URL进行GET),就像大多数浏览器所做的那样。

然后--post302的原因是引入符合规范的方式,在302之后不会改变请求方法,而是将POST发送到下一个URL。

可以解决限制而不更新到更现代的curl版本的方式是不使用-L而是使用脚本并执行302和位置: - 自己进行,然后在下一个URL上进行第二次curl调用。