使用以下工具oAuth Playground,并遵循文档Google Documents List API version 3.0。这就是我所做的。
我获得了以下3个范围的访问令牌。 https://docs.google.com/feeds/ https://docs.googleusercontent.com/ https://spreadsheets.google.com/feeds/
。请参阅以下附件。
获取访问令牌和刷新令牌后,我开始进行查询,获取特定文档的下载URL。我提出了以下GET请求https://docs.google.com/feeds/default/private/full/?v=3
。回应或多或少像
<entry ...
...
<content type='application/zip' src='https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t...626&e=download&gd=true'/>
...
</entry>
https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t...626&e=download&gd=true
。结果看起来像这样。
但是,我得到以下回应。
HTTP/1.1 302 Found
Status: 302
Content-length: 0
Via: HTTP/1.1 GWA
Set-cookie: AUTH_98m5tbqk1ftn500bl9bsjcrv52agg3u2_nonce=mupodp3rtqnoc; Domain=doc-0s-84-docs.googleusercontent.com; Expires=Thu, 14-Jun-2012 08:33:15 GMT; Path=/docs/securesc/4t66vjvgb1974sathdoeioitbft52pel; Secure; HttpOnly
Expires: Thu, 14 Jun 2012 08:23:15 GMT
X-google-cache-control: remote-fetch
Server: HTTP Upload Server Built on Jun 7 2012 12:49:38 (1339098578)
Location: https://docs.google.com/nonceSigner?nonce=mupodp3rtqnoc&continue=https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t66vjvgb1974sathdoeioitbft52pel/kea7kv7gjen26s72ovuvc0lc9to7ogf7/1339660800000/06447459084918146340/06447459084918146340/0B3MN1kmYytfaNWIwMzYzYzYtNmUxNS00OWMzLThkYzctZmUyNjg5MTY2NmUw?amp;gd%3Dtrue%26amp;e%3Ddownload%26h%3D16653014193614665626&hash=rtv0rrnj8bal21va48shlckqbjf5gjhm
Cache-control: private, max-age=0
Date: Thu, 14 Jun 2012 08:23:15 GMT
P3p: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."
Content-type: text/html; charset=UTF-8
我得到相同的结果,即使我在网址背面附加了?v=3
,使其看起来像https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t...626&e=download&gd=true?v=3
我为什么会收到这样的错误?
答案 0 :(得分:2)
您使用的网址是URL编码的。只需在网址中将&e=download&gd=true
更改为&e=download&gd=true
即可。