[英]How to send data on a curl redirect?
我有一个当前在 HTTP 上的 API,我在 python Flask 中使用 SSLify 库移动了 API。 现在当我使用 curl 请求发送数据时
curl -v -k -H "Content-Type: application/json" -X POST \
--data '{"title":"foobar","body": "This body"}' \
-L http://X.Y.Z.W.us-west-2.compute.amazonaws.com/test
它通过使用 request.data 向我返回一个空字符串如果我请求以 https 开头,它将返回正确的值。 如果有重定向,我该如何发送数据?
SSLify 根据您的配置发出 301 或 302 重定向状态代码。 所以你需要通过--post301
或--post302
来卷曲。
原因可以在 curl 手册页中找到:
当 curl 跟随重定向并且请求不是普通的 GET(例如 POST 或 PUT)时,如果 HTTP 响应是 301、302 或 303,它将使用 GET 执行以下请求。如果响应代码是任何其他 3xx代码,curl 将使用相同的未修改方法重新发送以下请求。
您可以使用专用选项告诉 curl 在 30x 响应后不要将非 GET 请求方法更改为 GET:--post301、--post302 和 -post303。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.