javascript - Google Drive 上传的外部 Javascript 客户端授权

标签 javascript upload client oauth-2.0 google-drive-api

我正在开发基于 Javascript 的客户端应用程序,它不会是 Google 应用程序。我可以在云端硬盘上创建文件,但在尝试上传内容时遇到授权问题。

评论在: Authorization of Google Drive using JavaScript 似乎说客户端必须是一个谷歌应用程序才能写入驱动器,但在我看到这条评论之前,我认为我创建空文件的能力可能会加强这一点。请有人澄清一下吗?

我使用的代码与帖子的响应 3 类似,但我只看到登录屏幕,没有要求 Google Drive 权限。

我的代码使用 How do I add/create/insert files to Google Drive through the API? 中描述的两部分“媒体”上传方法

正如我所说,文件创建有效但上传失败:

https://www.googleapis.com/upload/drive/v1/files/0Bxbwly1hLFXnVmQ3Snh3ZXVOYVE?uploadType=media&alt=json&key= 401(未经授权)rs=AItRSTNkdxHWOPN1C6XNGC9ea3U4KWDICw:128 :响应>{“错误”{“消息”“无效凭证”,“错误”[{“域”“全局”,“原因”“authError”,“消息”“无效凭证”,“locationType”“标题”, “位置”“授权”}],“代码”401}}

我没有直接使用 Javascript,而是使用 Clojurescript,所以我的上传调用可能存在问题。没有任何要求谷歌驱动器权限的东西似乎表明真正的授权问题,但我希望在请求“https://www.googleapis.com/auth/drive”时不会获得 access_token。谢谢

更新.... 我终于解决了这个问题:如果我请求“https://www.googleapis.com/auth/drive.file”而不是更大的权限“https://www.googleapis.com/auth/drive”,那么身份验证请求访问 Drive 并上传文件内容。

最佳答案

我终于解决了这个问题:如果我请求“https://www.googleapis.com/auth/drive.file”而不是更高的权限 https://www.googleapis.com/auth/drive然后身份验证请求访问 Drive 并上传文件内容。

关于javascript - Google Drive 上传的外部 Javascript 客户端授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12214873/

相关文章:

javascript - 使用 AJAX 的下一页/上一页

通过 API 发布的 Facebook 照片不会显示在页面公共(public)时间线上

PHP 多文件数组

c++ - 寻找适用于 Windows 7 的 C++ 中的 poco ssl websocket 客户端示例

javascript - 将现有的移动 HTML 设计与 sencha touch 集成

javascript - 在 Angularjs 中将字节数组转换为 Base64 字符串

javascript - 获取嵌套值的简写

java - 使用 Retrofit2 上传二进制文件大多数时候会因 ECONNRESET(连接被对等方重置)而失败

android - 进入 android 网络,HTTP 库首选项?

c# - 在第一次尝试使用 WCF 失败后,客户端如何尝试重新连接到服务器?