使用google drive api将文件复制到文件夹时出现错误请求错误

时间:2012-10-09 06:21:23

标签: google-drive-api

我正在尝试使用google drive api将文件复制到文件夹

正如文档所说,我正在向https://www.googleapis.com/drive/v2/files/{fileId}/copy?access_token={MY_ACCESS_TOKEN}

生成POST请求

我正在使用python生成请求,并且为了指定目标文件夹,我将请求主体设置为 -

{
"parents":
[
{
"id":"{parent_id}"
}
]
}

所以最终的代码就像 -

url = https://www.googleapis.com/drive/v2/files/Ansjd021-23123414kjn2k3jn2/copy?access_token=Ya.asdsakjn2312k3n21kj3n-12312j3knb123l
body = {
    "parents":
        [
            {
                "id":"ZXC12312323123-Blahasd12323X"
            }
        ]
}
request2 = urllib2.Request(url, urllib.urlencode(body))
request2_open = urllib2.urlopen(request2)
response = request2_open.read()
request2_open.close()
print response

问题在于我收到Http错误:404 Bad Request 我似乎无法弄清楚这个问题。我正在使用谷歌游乐场和它在那里运行做同样的事情。

1 个答案:

答案 0 :(得分:0)

我是使用https://developers.google.com/drive/v2/reference/files/copy#try-it完成此操作并获得了...

POST https://www.googleapis.com/drive/v2/files/1234/copy?key={YOUR_API_KEY}

Content-Type:  application/json
Authorization:  Bearer ya29.AHES6ZSZB-t4b4HsR5
X-JavaScript-User-Agent:  Google APIs Explorer

{
 "parents": [
  {
   "id": "1234"
  }
 ]
}

这与您的示例几乎相同,只是authtoken位于http标头而不是URL中。此外,如果您不对身体进行urlencode会发生什么?响应正文中是否有较长的错误消息?