【发布时间】:2013-07-08 21:16:56
【问题描述】:
我正在尝试使用多部分编码将附件添加到我的时间线。我一直在做类似以下的事情:
req = urllib2.Request(url,data={body}, header={header})
resp = urllib2.urlopen(req).read()
它在应用程序/json 中运行良好。但是,我不确定如何格式化多部分的正文。我还使用了一些库:requests 和 poster,它们都出于某种原因返回 401。
如何使用库(最好是 urllib2 的插件)或 urllib2 本身(如上面的代码块)发出多部分请求?
编辑: 我也希望它能够支持来自 https://developers.google.com/glass/timeline
的 mirror-api "video/vnd.google-glass.stream-url"对于使用海报库的请求,代码如下:
register_openers()
datagen, headers = multipart_encode({'image1':open('555.jpg', 'rb')})
这里使用requets:
headers = {'Authorization' : 'Bearer %s' % access_token}
files = {'file': open('555.jpg', 'rb')}
r = requests.post(timeline_url,files=files, headers=headers)
返回 401 -> 标题
谢谢
【问题讨论】:
-
401 是授权错误。您可以发布您用于请求和/或提供 401 的海报的代码吗?我想知道您是否附加了身份验证令牌。
-
非常正确,我没有想到这一点。我如何将 access_token 附加到任何一个?
-
有什么理由不使用 Python 客户端库吗?我们有一些sample code 展示了如何插入带有附件的时间线项目。
-
仅供参考,这是客户端库中构建多部分请求的代码部分:code.google.com/p/google-api-python-client/source/browse/…
-
@Alain 那个链接是黄金,我得到了 200 个。
标签: python django google-mirror-api