这真让我感到困惑。我遵循了所有将身份验证添加到here所列端点的示例。不幸的是,每当我将其部署到应用程序引擎时,当我尝试使用以下行加载oauth API时,都会收到404 not found错误:
gapi.client.load('oauth2','v2',loadcallback);
我只收到一条Javascript错误消息:*加载资源失败:服务器响应状态为404(未找到)*
我似乎无法解决此问题,也无法调用gapi.client.oauth2.userinfo.get();。
然而,
gapi.auth.authorize
工作正常。
有任何想法吗?授权可以从Android正常工作。
谢谢
最佳答案
哇,我花了很长时间才找到,但是真是太傻了。如果有人遇到类似问题,我将在这里留下答案。
该问题源于使用App Engine插件生成的“ connected android”项目。这开始时没有Auth,然后按照上面的说明按照说明添加Auth。
麻烦在于,在创建的index.html文件中,在<script src="https://apis.google.com/js/client.js?onload=loadGapi">
行下有一些规范会迫使gapi.client.load使用您的域。删除此代码(大括号中的所有内容),使其类似于:
<script src="https://apis.google.com/js/client.js?onload=loadGapi">
</script>
但是,现在终结点api以前对gapi.client.load的所有调用均无效。要解决此问题,您需要指定他们应使用您的网址,如下所示:
gapi.client.load('deviceinfoendpoint', 'v1', loadcallback, API_URL );
这里的API_URL是'http://'+ window.location.host +'/ _ah / api';