0

这真的让我很困惑。我已按照此处列出的向端点添加身份验证的所有示例进行操作。不幸的是,每当我将它部署到应用程序引擎时,当我尝试使用以下行加载 oauth API 时,都会收到 404 not found 错误:

gapi.client.load('oauth2', 'v2', loadcallback);

我只是收到一条带有消息的 Javascript 错误:*加载资源失败:服务器响应状态为 404(未找到)*

我似乎无法解决这个问题,也无法调用gapi.client.oauth2.userinfo.get(); 然而,

gapi.auth.authorize

工作正常。有任何想法吗?授权在 Android 上正常工作。

谢谢

4

1 回答 1

3

哇,我花了很长时间才找到,但东西太傻了。如果有人遇到类似问题,我将把答案留在这里。

问题源于使用 App Engine 插件生成的“连接的 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 的先前有效调用都不起作用。要解决此问题,您需要指定他们应该使用您的 URL,如下所示:

gapi.client.load('deviceinfoendpoint', 'v1', loadcallback, API_URL );

这里 API_URL 是 'http://' + window.location.host + '/_ah/api';

于 2013-05-03T09:52:48.410 回答