当前位置: 首页 > 知识库问答 >
问题:

谷歌文档API:无法下载文件,下载文档工作

酆出野
2023-03-14
GET https://doc-04-20-docs.googleusercontent.com/docs/secure/m7an0emtau/WJm12345/YzI2Y2ExYWVm?h=16655626&e=download&gd=true  

然而,html" target="_blank">下载URL与paremeters有一些有趣的地方,它看起来如下所示:

https://doc-00-00-docs.googleusercontent.com/docs/securesc/5ud8e...tMzQ?h=15287211447292764666&amp\;e=download&amp\;gd=true    

(在url中,'&\;‘实际上没有'\',但我把它放在帖子中,以避免将其转义为'&')。

那么这里是什么情况;我是否有3个参数h、e、gd,或者我有一个参数h,其值15287211447292764666&ae=download&gd=true,或者我有以下3个参数值对:h=15287211447292764666amp;e=downloadamp;gd=true(我认为是这样,而且似乎是一个bug)?

为了形成一个正确的http请求,我需要清楚地知道参数、名称和值是什么,但是我有一个令人困惑的下载URL。此外,如果params的名称是h,amp;e和amp;gd,那么包含这些params的请求对于获取文件内容是否有效(如果不是,这似乎是一个bug)。

我在下载和上传文档(msword docs)时没有问题,我的文件下载范围是正确的。

我尝试了很多不同的请求。当我处理3个参数(h、e、gd)separetaly时,我得到unauthorized 401。如果我假设只有一个参数-h,其值为15287211447292764666&ae=download&gd=true,则得到500 Internal Server error(谷歌api声明:“api中发生了意外错误。”,“如果问题仍然存在,请在论坛上发表文章。”)。

如果我根本不放任何paremeters或放了3个参数-h,amp;e,amp;gd,我得到302 found。我尝试按照重定向发送更多的请求,但我仍然无法获得实际的pdf内容。我也在OAuth游乐场做了实验,似乎它也没有像它应该的那样工作。在OAuth中发送带有下载URL的get请求时,将以302 found响应,而不是以PDF内容响应。

这是怎么回事?如何获得回应中的pdf内容?请帮忙。

共有1个答案

程智明
2023-03-14

我已经用oAuth2试验了相同的问题(错误401)。

通过在请求头中而不是URL中插入oAuth2令牌来解决。

我已经将URL中的&access_token=<;token>;替换为setrequestheader(“授权”,“承载<;token>;”)

 类似资料:
  • 我正在运行每夜构建,所以我确信有一种方法可以使用以与标准文档相同的方式生成所有文档,但我就是找不到! 我正在运行Linux,使用以下命令进行夜间构建:

  • 我是Python3新手,我正在尝试在登录网站后下载一个文档。 我有2个网址,可以让我立即登录到网页和下载文件。登录后,以下各项: https://www.xxxcompany.com/login.action?loginname=name 这是我的密码。它肯定不起作用,也不会给我打印状态码。我是否误解了一些概念?请帮我解决这个问题。非常感谢你!

  • 我在尝试从谷歌云存储下载CSV文件时遇到了一个问题。出于某种原因,它一直以字节而不是可读文本的形式下载文件。当我在Excel中打开下载的CSV时,Excel已经足够智能,可以将其转换为可读文本。我在这里错过了什么?我检查了谷歌的文档,但找不到任何好的信息来完成它们。提前谢谢你! 这是错误:UnicodeDecodeError:“utf-8”编解码器无法解码位置15-16的字节:无效的连续字节

  • 在我为客户制作的网站上,当他们尝试使用Internet Explorer 11下载文件时,他们无法从该站点下载文件。 这些文件保存在我们的服务器上,使用上传文件的数据库,位置,名称和MIME类型的文件能够被下载。例如,路径为“/uploaded _ files/6f/AE 69 BD 966 ba 4c 740 b 8073 ff 969 a 5425 b”,文件名为“Finland Test 1

  • 我有一个python脚本,它获取已上传到google云存储桶的文件列表,并尝试以字符串形式检索数据。 代码很简单: 我的问题是,我上传的数据存储在bucket中的文件夹中,因此路径类似于: 当google library试图下载文件时,它会以GET请求的形式获取该文件,该请求将上述路径转换为: 有没有办法阻止这种情况发生/通过这种方式下载文件?干杯

  • 我是Google Cloud Platform的新手。我已经在datalab上训练了我的模型,并将模型文件夹保存在云存储中。我可以通过右键单击文件将桶中的现有文件下载到本地计算机-