javascript - Google App Engine 云端点 : OAuth2 won't work. 无法加载 api

标签 javascript security google-app-engine

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

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

我刚刚收到 Javascript 错误,并显示以下消息:*无法加载资源:服务器响应状态为 404(未找到)*

我似乎无法解决此问题,并且无法调用gapi.client.oauth2.userinfo.get(); 然而,

gapi.auth.authorize

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

谢谢

最佳答案

哇,我花了很长时间才找到,但真是太愚蠢了。如果有人遇到类似问题,我将在这里留下答案。

问题源于使用 App Engine 插件生成的“connected android”项目。首先没有身份验证,然后按照上面链接的说明添加身份验证。

问题是在创建的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';

关于javascript - Google App Engine 云端点 : OAuth2 won't work. 无法加载 api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16355654/

相关文章:

java - 将 Cloud Endpoints API Explorer 锁定到特定 Gmail 帐户

javascript - 抓取并解析 Javascript 元素

javascript - 如何使用正则表达式匹配逗号后的任何数字?

security - 如何为您不信任的特定 vscode 扩展禁用 Internet 访问

google-app-engine - 重定向后如何在 safari 中保留 uri 片段?

google-app-engine - 如何链接/连接 Firebase 和 Google App Engine 以调整图像大小

javascript - HTML 页面和 Java servlet 之间交换数据,无需刷新页面

javascript - 使用 Javascript 列出文件路径中的特定目录

从用户数据创建 Clojure 关键字的安全隐患?

asp.net - 自定义主体在新请求时恢复为 GenericPrincipal