我正在使用 Google Drive API 为我的 ERP 项目构建文件管理功能。在我的设置中,我系统的用户包括拥有许多员工的企业。每个企业都有一个拥有公司 Google Drive 帐户的 Google Drive 管理员。 Google Drive 管理员登录我的系统以启动 OAuth2 授权流程并授予我的系统访问权限,在流程结束时,我的系统将访问令牌和刷新令牌保存到该特定业务的数据库中。
现在,我想要做的是让同一家公司的用户能够利用此访问令牌将文件直接上传到共享的公司谷歌驱动器,而不必先将文件上传到我的服务器。我找到了这个客户端 javascript 库,它允许我进行客户端可恢复上传: https://github.com/tanaikech/ResumableUploadForGoogleDrive_js#resumableuploadtogoogledrive2
我已经实现了与库中提供的示例类似的代码,唯一的区别是我使用了来自服务器的访问令牌,这是我通过公司的 Drive 管理员用户获得的。运行代码时,我收到了 401 错误,其中包含来自 Google 的消息“无效凭据”。
我的问题是这是我遇到的 CORS 问题吗?我希望我的用户能够直接将文件上传到他们公司的 Google Drive,而不是先上传到我的服务器,然后再重新上传到 Google Drive。这可能吗?
我想过让服务器启动上传先获取一个上传URI,然后让用户将文件内容上传到那个URI,但是在线挖掘似乎是谷歌不允许的。我不确定我想做什么是可以实现的,有什么想法吗?