无法使用Google文档列表+ oAuth REST协议下载文件

时间:2012-06-14 08:25:40

标签: oauth-2.0 google-docs-api google-drive-api google-api-java-client oauth2-playground

使用以下工具oAuth Playground,并遵循文档Google Documents List API version 3.0。这就是我所做的。

  1. 我获得了以下3个范围的访问令牌。 https://docs.google.com/feeds/ https://docs.googleusercontent.com/ https://spreadsheets.google.com/feeds/。请参阅以下附件。

    enter image description here

  2. 获取访问令牌和刷新令牌后,我开始进行查询,获取特定文档的下载URL。我提出了以下GET请求https://docs.google.com/feeds/default/private/full/?v=3。回应或多或少像


  3. <entry ...
        ...
        <content type='application/zip' src='https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t...626&amp;e=download&amp;gd=true'/>
        ...
    </entry>
    
    1. 然后我输入下载网址https://doc-0s-84-docs.googleusercontent.com/docs/securesc/4t...626&amp;e=download&amp;gd=true。结果看起来像这样。
    2. enter image description here

      但是,我得到以下回应。

      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&amp;e=download&amp;gd=true?v=3

      我为什么会收到这样的错误?

1 个答案:

答案 0 :(得分:2)

您使用的网址是URL编码的。只需在网址中将&amp;e=download&amp;gd=true更改为&e=download&gd=true即可。