首页 > 解决方案 > requests.post 与 curl -XPOST

问题描述

我尝试使用两种方式向https://www.hackthebox.eu/api/invite/generate发送发布请求。当我使用 requests.post 我得到 404 但当我使用 CURL 时它工作正常。

请求.post:

>>> import requests
>>> requests.post('https://www.hackthebox.eu/api/invite/generate')
<Response [404]>

卷曲-XPOST:

>curl -XPOST https://www.hackthebox.eu/api/invite/generate
{"success":1,"data":{"code":"TEJJS08tWFBBT0EtSUtRV0gtUEVOWUItVFdOU0U=","format":"encoded"},"0":200}

两种方式有什么区别,为什么一种有效而另一种无效?谢谢。

标签: pythonrestcurl

解决方案


看起来服务在www.hackthebox.eu寻找User-Agent标头,curl 默认发送该标头。

尝试User-Agent在标题中添加一个,例如:

>>> import requests
>>> requests.post('https://www.hackthebox.eu/api/invite/generate', headers={'User-Agent': 'blah'})
<Response [200]>

推荐阅读