0

我正在使用 Requests 与一个简单的 api 进行通信。

代码如下所示:

payload = {'text': reply, 'name': varname, 'avatar': varavatar}
r = requests.get('http://example.de/create.json', params=payload)

但是,结果如下所示:

{"result": "error", "error": "error_no_direct_connection"}

这可能是 api 的问题,但我不确定。所以我打印出 Requests 创建的 URL ( print r.url)。它看起来像这样:http://url.com/create.json?text=Test&name=myname&avatar=http%3A%2F%2Fa0.url.com%2Fnormal.png

为了确保这不是我使用 curl 尝试的 api 的问题。该命令有效!

curl --data-urlencode "text=Test" -d "name=myname" -d "avatar=http://url.com/normal.png" http://url.com/create.json
4

1 回答 1

1

curl 选项--data使 curl 提交一个 POST 请求,而不是一个 GET 请求。试试request.post(..., data=...)

于 2013-01-31T13:35:39.223 回答