我正在开发基于 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/