【问题标题】:How to fix 403 error while displaying images from google drive?如何在显示来自谷歌驱动器的图像时修复 403 错误?
【发布时间】:2020-02-10 23:09:12
【问题描述】:

我使用以下链接语法从谷歌驱动器一次显示大约 20 个缩略图,缩略图链接存储在数据库中,并使用 ajax POST 请求获取。我在 localhost 上对此进行测试,每次我清除缓存并重新加载时,我都会在至少一些图像上收到 403 no response from server 错误。这些图像是公开的,任何人都可以访问,并且每次访问该链接都会手动打开图像。 这是我使用的链接:

"https://lh3.googleusercontent.com/d/" + imgid + "=s500?authuser=0"

【问题讨论】:

    标签: google-chrome google-drive-api


    【解决方案1】:

    您为什么使用此链接来获取文件?

    尝试获取File resource中的链接之一:

    • webContentLink 用于在浏览器中下载文件内容的链接。这仅适用于 Google Drive 中包含二进制内容的文件。

    • webViewLink 用于在相关 Google 编辑器或浏览器查看器中打开文件的链接。

    • iconLink 指向文件图标的静态、未经身份验证的链接。

    • thumbnailLink 文件缩略图的短期链接(如果有)。通常持续数小时。仅在请求应用可以访问文件内容时填充。

    之后选择最适合您需求的属性之一。提出必要的要求

    GET https://www.googleapis.com/drive/v3/files/<yout-file-id>?fields=webContentLink&key=[YOUR_API_KEY] HTTP/1.1
    
    Authorization: Bearer [YOUR_ACCESS_TOKEN]
    Accept: application/json
    

    之后,您可以使用检索到的链接来显示图像。

    如果你想查看img标签的最终结果,有your problem的人。

    【讨论】:

    • 我知道我可以在图像的 src 中使用 webContentLink,但是以全分辨率下载图像,我希望缩略图的质量低于实际图像,因此加载速度更快.而且 thumbnailLink 是短暂的,我正在寻找一种永久的方法。
    • 最终这就是 Google API 所提供的。您可以在每次需要缩略图链接时发出 HTTP 请求。或者上传缩略图版本和全分辨率图像以获得您想要的任何一个。
    猜你喜欢
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多