在向timeline_url发出请求时,我最近收到了400个错误的请求解析错误。
我发布到此网址 timeline_url = 'https://www.googleapis.com/mirror/v1/timeline'
编辑 这是代码:
headers = {'Content-Type': 'application/json',
'Authorization' : 'Bearer %s' % access_token}
body = {"text" : "Waddup doe!"}
""" ***********THIS IS RETURNING ERROR 400 PARSE ERROR***********"""
send_request(timeline_url, headers, 'POST',body)
send_request方法正在使用requests
req = requests.post(url, data=body, headers=headers)
我只是想在我的时间轴上插入纯文本。
答案 0 :(得分:3)
body_bytes = sys.getsizeof(body)
headers['Content-Length'] = body_bytes
这会在您的请求标头中插入不正确的值。 sys.getsizeof
描述了数据结构的大小 - 包括指针,计数器等。 NOT 描述字符串表示在HTTP流上占用的字节数。
只需删除这些行; requests
会自动填写Content-Length
。
您没有描述如何对有效负载进行json编码。也许你需要这样做:
req = requests.post(url, data=json.dumps(body), headers=headers)
请参阅:http://docs.python-requests.org/en/latest/user/quickstart/#more-complicated-post-requests