媒体上传代码400

时间:2013-07-09 18:39:41

标签: python django post google-mirror-api

我正在使用django建立一个python web架构。我已经使用urllib2和requests库成功地将文本插入到我的时间轴中。我现在正在尝试发送图像,最好使用请求库发送视频。

这是我的身体

body = {'--':'2bbcee47b4e94819a3a47eeb8967e244',
        'Content-Type' : 'application/json',
        'text':'Hello World',
        '--':'2bbcee47b4e94819a3a47eeb8967e244',
        'Content-Type': 'image/jpeg',
        'Content-Transfer-Encoding':'binray',
        '--':'2bbcee47b4e94819a3a47eeb8967e244'}
header = 'Content-Type': 'multipart/related; boundary=2bbcee47b4e94819a3a47eeb8967e244', 'Authorization': 'Bearer %s' % access_token}
files = {'file': open('555.jpg', 'rb')}
r = requests.post(upload_url,data=body, headers=headers)

返回:

{
 "error": {
  "errors": [
   {
   "domain": "global",
   "reason": "badContent",
   "message": "Media type 'multipart/related; boundary=2bbcee47b4e94819a3a47eeb8967e244'         is not supported. Valid media types: [image/*, audio/*, video/*]"
   }
  ],
  "code": 400,
   "message": "Media type 'multipart/related; boundary=2bbcee47b4e94819a3a47eeb8967e244'is not supported. Valid media types: [image/*, audio/*, video/*]"
  }
}

我知道这回复了不好的要求;我不知道为什么。 此外,网址是POST     upload_url ='https://www.googleapis.com/upload/mirror/v1/timeline?uploadType=media'

注意:我运行了一个curl命令和相同的结果。

1 个答案:

答案 0 :(得分:0)

您是将请求发送到正确的终端,但网址参数错误:它应该是uploadType=multipart而不是uploadType=media

POST https://www.googleapis.com/upload/mirror/v1/timeline?uploadType=multipart

我们在documentation

中对此进行了描述