任何人都可以用JavaScript上传文件到我的Google Drive公共文件夹

Anyone to upload a file to my Google Drive public folder using JavaScript

本文关键字:Google 我的 Drive 文件夹 文件 都可以 JavaScript 任何人      更新时间:2023-09-26

我是Google API的新手。我的目标是允许网站用户上传文件到我们的公共谷歌驱动器文件夹。我应该在客户端做。

我知道这是不安全的,但团队敦促我在前端做。

我已经阅读并尝试了不同的解决方案(从StackOverflow的答案以及),没有工作。

我也检查了Google Drive API文档:https://developers.google.com/drive/v3/web/manage-uploads

请求应该是:

POST /upload/drive/v3/files?uploadType=media HTTP/1.1
Host: www.googleapis.com
Content-Type: image/jpeg
Content-Length: number_of_bytes_in_file
Authorization: Bearer your_auth_token
JPEG data

我试图在JavaScript中做一个简单的HTTP POST请求,但无法设置Host标头(不安全的标头错误)。

your_auth_tokenclient secret吗?

你知道我该怎么做吗?

您需要创建一个Google应用程序来获取您的auth_token粘贴在您的请求头中,这应该可以正常工作。

授权如何工作在高层,所有应用程序都遵循相同的基本授权模式:

  1. 在Google API控制台注册应用程序。
  2. 请求用户授权访问其Google帐户中的数据。
  3. 如果用户同意,您的应用程序请求并接收凭证
  4. 访问驱动器API
  5. 刷新凭据(如果需要)。

创建新的认证

  1. 在凭据页面中,单击创建凭据> OAuth客户端创建OAuth 2.0凭据的ID或创建凭据>业务帐号密钥,用于创建业务帐号。
  2. 如果您创建了OAuth客户端ID,那么选择您的应用程序类型。填写表格并单击Create。

客户端密钥存储在这里:

https://console.developers.google.com/flows/enableapi?apiid=drive&安全= vss&凭据= client_key

进一步文档https://developers.google.com/drive/v2/web/about-auth