为什么我收到的“身份验证的用户没有安装与客户端ID的应用程序”的错误本地使用谷歌云端硬盘API是什么

2019-06-24 00:43发布

我正在一个谷歌驱动器接口为Emacs上。 这个概念是,Emacs的可以提供一个平台无关的方式来加载,修改和保存存储在谷歌驱动器文本文档。 我已经注册我的应用程序,并且可以与认证的OAuth2并获得文件与文件列表API列表,但是当我尝试执行与谷歌云端硬盘API的插入,我看到一个错误:

“经过身份验证的用户没有安装使用客户端ID的应用程序。”

进一步阅读,看来我需要发布在Chrome Web Store的我的Emacs的应用程序能够访问到驱动器API。 这没有任何意义,我...我注意到,有正在开发一个FUSE项目谷歌驱动器,这表明本土发展才有可能。 当我脱脂的代码,但是,我没有看到一个Chrome网上应用店组件来获得它的工作。

上午我试图滥用API,或者是有,使这项工作更有意义的路线?

Answer 1:

编辑:

据阿里阿夫沙尔的谷歌驱动的球队,安装不再需要使用这个API。 所以,接下来可能不再是相关的,但将留给历史的目的。


所以,先关API不支持在这个意义上,我们都做应用开发,我不会,虽然使用原生的话。 好消息是我一直在做一些研究和谷歌驱动器是真的只是一个谷歌文档更名。 因此,谷歌文档API可能是一个不错的选择,以及为同一目的。

总之,这里的解决错误的步骤:“经过身份验证的用户没有安装使用客户端ID的应用......”这是一个403错误,对于这个答案的缘故。 这些步骤假定您已经设置了作为需要Chrome Web Store的应用程序,并安装它。 我的工作我的本地机器上也与我的项目: http://github.com/tom-dignan/gdrive-cli我过得了这个错误,所以我觉得你应该保持在您的Emacs版本堵了,因为我想我们可以做这项工作。

一个。 打开谷歌API控制台 。

湾 确认您已经启用了在“API访问”两种API和SDK谷歌驱动器应启用的API。 在那里,你让你的客户端机密/ API密钥和这样。 我几乎可以肯定你已经做到了这一点,所以要提前下(这是在这里为别人谁可能已经错过了它)

C。 在左侧导航栏中,“驱动SDK”下,你需要做到以下几点:

  1. 添加“支持URL”(必需)

  2. 添加至少一个小16x16的应用程序图标(必填)

  3. 添加“OAuth用户端ID(必需)”下的驱动器集成 (我只是修修补补,这似乎是重点领域。)

  4. 添加“打开URL(必需)URL来打开你的应用程序从谷歌驱动器的用户界面。”

  5. 勾选“多文件支持”

  6. 添加一些MIME类型和文件扩展名,“text / plain的”,以及TXT例如

  7. 添加在授权范围:

    https://www.googleapis.com/auth/userinfo.email

    https://www.googleapis.com/auth/userinfo.profile

不要打扰试图在这里添加对谷歌文档的授权范围,因为它不会工作。 谷歌不希望我们使用它的方式,因为该驱动器的应用程序创建的文件应该是私有的该应用程序。 与谷歌文档一体化将不得不分开。

现在我知道你一定在想“为什么我要加一些这样的......”这是因为形式使他们必填字段。 在我的,我把一对夫妇的URL指向静态HTML页面。

一旦你完成了上述情况,清理你的状态,并重新安装Chrome应用。 然后再次尝试你的代码,它应该停止给你403。



文章来源: Why am I getting “The authenticated user has not installed the app with client id” error when using the Google Drive API natively?