gpt4 book ai didi

google-drive-api - 使用 Google Picker 从 Google Drive 下载文件

转载 作者:行者123 更新时间:2023-12-04 19:44:24 24 4
gpt4 key购买 nike

我正在尝试构建一个网页,用户可以在该网页上使用 Google Picker 从 Google Drive 中选择图像,并使用 PHP 脚本将所选文件下载到我的服务器。

我已经设法设置了 Picker,并且获得了文件 ID,但是当我将此 ID 传递给我的后端并尝试使用 GET 方法时,我收到了身份验证错误。

我已经花了 2 天的时间来研究这个问题,但是我阅读谷歌官方文档的次数越多,我就越困惑。

有人可以告诉我,或者链接我如何实现这个例子吗?是否有可能以某种方式将 oAuthv2 token 从 GooglePicker 传递到我的 PHP 后端,然后在 GET 请求中使用该 token ?

非常感谢您提前!

编辑:

这是我尝试 GET https://www.googleapis.com/drive/v2/files/SOME_FILE_ID 时遇到的错误

{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceededUnreg",
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup.",
"extendedHelp": "https://code.google.com/apis/console"
}
],
"code": 403,
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup."
}

最佳答案

在调用 GET 之前,您必须设置一个包含最新访问 token 的 Authorisation-Header。

如果您想手动执行此操作,步骤是:-

  • 使用您的 app-id/client-id 和范围请求权限。这将返回给您一个授权码。
  • 使用授权码请求刷新 token 和访问 token
  • 存储刷新 token 以备将来使用
  • 在 http 头授权中设置访问 token (类似于授权:Bearer ya29.AHES6ZR3HQa9trJM_IQcgNlM0SI4FvLQFiQfcAZCWLobfpjqtGlT6A)
  • 发出您的 GET

  • 您可以点击 https://developers.google.com/oauthplayground/ 查看整个过程。

    或者,如果您的客户端应用程序已经有一个访问 token ,您可以将它与文件 ID 一起发送到您的服务器,您的服务器可以简单地将其直接设置到 Authorization header 中。

    您可以改用 PHP 库,例如。转至 https://developers.google.com/drive/v2/reference/files/insert并向下滚动以查看 PHP 示例。无论您是手动构建 URL 还是使用库,这完全是您的选择。库的最大缺点是,如果出现问题,您确实需要了解并跟踪 http 以查看发生了什么,因此不妨从第一天开始学习并爱上它们。

    消息“已超出未经身份验证的使用的每日限制”似乎让初学者(包括我在内)感到困惑。 “未经身份验证的使用”是重要的部分,这意味着您尚未设置 Authorization header 。 Google API 对未经授权的使用(例如 URL 缩短器之类的东西)有每日配额。在 Drive 的情况下,该配额为零,因此出现错误。

    关于google-drive-api - 使用 Google Picker 从 Google Drive 下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18558604/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com