Python 请求代码 141 错误

Python Requests Code 141 Error

我正在尝试使用 python 中的请求到 post 到 json 字典到 url。我需要从 url 取回一个字符串,但我不断收到代码 141 错误 -{"code":141,"error":"Missing a github repository link"}。我正在使用这个网站(http://docs.python-requests.org/en/latest/user/quickstart/) 来做请求。

关于为什么我不断收到该错误的任何想法?代码如下。

import requests
import json

payload = { "email" : "jade@gmail.com", "github" : "https://github.com/"}
headers = {'content-type': 'application/json', "Accept": 'application/json'}
r = requests.post("http://challenge.code2040.org/api/register", params = payload, headers = headers)

print(r.url)
print r.text

更新:这个建议奏效了,但现在我在尝试保存从url 到一个变量然后 post 它回到不同的 url.

#Store the token into a variable
token = r.text

payload = { "token" : token}
headers = {'content-type': 'application/json', "Accept": 'application/json'}
r = requests.post("http://challenge.code2040.org/api/getstring", json = payload, headers = headers)

print r.text

由于您提出的是 POST 请求和 you need to provide a JSON in the request body, use json argument,而不是 params:

r = requests.post("http://challenge.code2040.org/api/register", 
                  json=payload, 
                  headers=headers)

(已测试 - 取回令牌)

请注意 json 参数是在 requests 2.4.2 中引入的。