使用POST的curl不起作用,request.POST为空。

3

我正在尝试使用以下方式发送带有一些 JSON 数据的 POST 请求:

curl --verbose -X POST -d @testfile.json http://oururl.com/someapi --header "Content-Type:application/json"

另一端的视图读取request.POST.dict() -- 但是request.POST为空(尽管内容长度已设置)!我以前使用过这种方法,从未遇到过这种情况,无法弄清楚出了什么问题。

1个回答

3
您正在发布JSON数据。 request.POST 用于表单编码数据。
您应该访问 request.body 并将其通过 json.loads() 进行处理。

1
我试图让它变得更加复杂。对于其他遇到这个问题的人,你仍然可以使用上述方法,只需删除--header(默认为表单数据编码)并将文件结构更改为类似于things=[{"id":5,"column":"foo"}] &lang=en_US &user_country=US - Colleen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接