Google drive api Google Drive API下载URL不工作 我在谷歌硬盘上有一些录音 这些文件“任何人都可以通过链接查看” 我已经创建了一个链接到这些文件的播客提要

Google drive api Google Drive API下载URL不工作 我在谷歌硬盘上有一些录音 这些文件“任何人都可以通过链接查看” 我已经创建了一个链接到这些文件的播客提要,google-drive-api,Google Drive Api,为了让播客客户端下载文件,它需要一个直接下载链接。Google Drive API在一个文件的元数据中返回两个可以扮演此角色的字段: webContentLink用于浏览器中。它允许我的播客客户端下载小于25MB的文件;不幸的是,超过这个数量,谷歌需要用户确认,因为文件没有被病毒扫描。如果文件超过25MB,此用户确认步骤将阻止我的播客客户端下载该文件 downloadUrl是您应该使用的,但我根本无法让它工作。如果我直接将downloadUrl复制粘贴到浏览器的地址栏中,我将一无所获。类似地,

为了让播客客户端下载文件,它需要一个直接下载链接。Google Drive API在一个文件的元数据中返回两个可以扮演此角色的字段:

  • webContentLink
    用于浏览器中。它允许我的播客客户端下载小于25MB的文件;不幸的是,超过这个数量,谷歌需要用户确认,因为文件没有被病毒扫描。如果文件超过25MB,此用户确认步骤将阻止我的播客客户端下载该文件
  • downloadUrl
    是您应该使用的,但我根本无法让它工作。如果我直接将
    downloadUrl
    复制粘贴到浏览器的地址栏中,我将一无所获。类似地,我的播客客户端也无法使用下载URL下载任何内容
似乎没有解决,这表明这一点仍然存在,但我有几个问题:

  • 我是否需要随下载URL请求提交API密钥?webContentLink不需要密钥
  • 这个问题有解决办法吗

使用下载URL请求文件时,必须在请求标头中指定以下授权:

"Authorization: Bearer $token"
其中,$token是由
gapi
为如下用户返回的访问令牌:

gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token;
curl -o download -H "Authorization: Bearer $token" $downloadUrl 
因此,如果使用curl,则请求如下:

gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().access_token;
curl -o download -H "Authorization: Bearer $token" $downloadUrl 

对于
下载URL
,您无法在浏览器中访问内容。请尝试使用[Oauth 2.0 playway][1]测试您是否能够通过
下载URL
获取内容,并查看是否可以看到文件的内容。[1] :我也有同样的问题。如果文件超过25 MB,则无法使用API从Google Drive下载文件。你找到解决办法了吗?:)