问题标签 [google-api-js-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oauth-2.0 - 如何刷新 google plus 不记名令牌 (javascript)?
我在我的单页 (javascript) 应用程序中使用 google HTML 登录按钮从使用 Google 登录的用户那里获取授权对象。这在此处进行了详细说明:https ://developers.google.com/+/web/signin/add-button 。
我成功收到了一个令牌,如下所示。由于此令牌在 1 小时后到期,因此我需要每 30 分钟左右刷新一次令牌,直到用户选择注销。我正在尝试通过调用:
但没有运气。我收到相同的令牌,直到它过期,之后我取回空(未登录)令牌。如何在用户不必不断再次登录的情况下保留/刷新不记名令牌?
javascript - google api redirect_uri_mismatch error
I am trying to get google plus authentication working for a web app, but continually get redirect_uri_mismatch errors. I have checked and re-checked that I have matching redirect urls in the code and in the google dev settings.
I have flagged the location that things are breaking at -> ** CRASHES HERE
Any help would be appreciated.
js binding
google+ component
POST /users
used code from https://github.com/google/google-api-nodejs-client/blob/master/examples/oauth2.js
javascript - BigQuery JS SDK 是否支持 CORS?
BigQuery 客户端 JavaScript SDK 中是否支持 CORS?具体来说,用户是否可以在我的应用程序内部发出请求以从 BigQuery 获取数据,而无需代理请求以避免 CORS?
javascript - gapi.auth.checkSession 是如何工作的?
我对gapi.auth.checkSession的工作方式有疑问。
我正在尝试检测用户是否已登录 Google。所以我正在运行这段代码:
在谷歌文档上,据说:
如果参数为真,则提供的 session_state 仍然有效
但出乎意料的是,true
如果用户没有登录 Google,我的支票就会返回,false
如果他登录了。我多次清除缓存和 cookie,请朋友尝试,他得到了相同的结果。这是正常行为吗?true
如果用户登录,它不应该返回吗?
另外,我不明白为什么client_id
需要参数?结果是否取决于提供的 client_id ?
谢谢您的帮助 !
javascript - 用户已注销时,Google signInCallback 调用了两次
我正在使用 Google 登录混合流程对用户进行身份验证,但我有一个奇怪的错误:当用户退出 ( authResult['error'] == 'user_signed_out'
) 时,signInCallback
会调用两次!用户登录时不会发生这种情况,因此我认为它与(相当烦人的)“欢迎回来[用户]”提示无关。
我的代码如下所示:
这是我在控制台上得到的:
查看更大的版本
我正在使用的 HTML 代码:
我在两个不同的浏览器上使用两个不同的 Google 帐户。我最初认为是因为这个(Google 将 google_account_id 和用户状态存储在 cookie 中,例如G_USERSTATE_H3 : 'google_account_id#1=0&google_account_id#2=1'
)。但是我清除了两个浏览器上的所有 cookie,并且只打开了一个浏览器和一个谷歌帐户来运行我的测试。我仍然得到这个错误。
这是一个非常烦人的错误。另外,谷歌浏览器处理得很好,但是火狐完全被吓坏了,执行了3次回调,然后,用户无法登录(他登录了1s,然后立即重新退出)。
有人可以帮我吗?
更新:这是包含 Google JS Api 的方式:
google-api - 使用 Google API JS 客户端时如何获取刷新令牌
我一直在尝试实现一个需要用户授予对 Google Analytics 访问权限的应用程序。我一直在关注本教程:
https://developers.google.com/analytics/solutions/articles/hello-analytics-api
在其他一些地方,AngularJs 的代码使用了相同的函数L
https://gist.github.com/jakemmarsh/5809963
我的问题是,身份验证工作得很好,但它没有返回 refresh_token。它从不返回 refresh_token。我已经尝试了网络上所有可能的方法。1.第一次,2.使用prompt=force等。但似乎没有返回refresh_token。我猜那部分被客户跳过了。
我需要知道当用户第一次授予访问权限时如何获取 refresh_token 以便我可以保存它。
javascript - 在沙盒 iframe 环境中使用 google javascript api
我有一个使用google javascript API的 HTML5 应用程序。我最近发现这个应用程序需要在 iframe 沙盒环境中运行。我知道这看起来像是试图解决沙盒环境的目标。但是 iframe 仍然允许使用某些功能(请参阅下面的约束),这让我认为有一些希望。
我在身份验证过程中遇到了问题:加载时,google javascript api 在原始页面上附加了一个 iFrame(在我的情况下这已经是一个 iframe),并使用 postMessage 机制在窗口之间进行通信。我想将 google api 用于 OAuth2.0 身份验证过程以及查询 API。
这是一个复制案例;我正在使用 google 提供的authSample.html页面的简化版本。
最终用户将使用的包含页面如下所示:
显然,在用服务器 authSample.html url 替换 iframe 的实际 src 后,您必须执行此页面。
如果你在不同的浏览器上运行它,你会注意到失败的不同行为。我试图利用允许弹出窗口的事实,但似乎浏览器实现了不同的事实,即打开的窗口也应该在沙盒环境中打开。
我想避免为身份验证编写自己的 Web 服务。此外,我相信用户使用通常的谷歌网页(带有 url accounts.google.com)输入他们的凭据会更安全。如果您有一个想法,可能适用于最近的浏览器,请随时提交。
谢谢
date - Google Calendar API 查询全天事件
我有一个应用程序,它使用日历 v3 API 在 Google 日历上创建、查询和修改全天事件。当我创建这些事件时,它们看起来像这样:
因此,如果我想查询 7 月 20 日至 7 月 26 日之间的所有此类事件,我会发送如下查询:
在更易读的格式中,参数是:
但是,这排除了所有带有 date 的事件2014-07-26
,它只获取 20 日到 25 日的事件。在我的参数中你可以看到我使用setUTCHours(0)
了为了没有时区信息。
如果我删除对和参数的调用,setUTCHours(0)
那么timeMin
我timeMax
会遇到相反的问题,我从 7 月 21 日到 7 月 26 日,错过了 7 月 20 日的事件。如何在任何时区可靠地获取一周的所有全天事件?
javascript - 使用来自 gapi 的 access_token 和旧的谷歌数据 js 库
我有使用新的 gapi javascript 库的现有代码。从那里,我可以使用 gapi.auth.getToken() 获取访问令牌。使用较旧的 Google Data JS 库进行调用时是否可以使用该访问令牌?
具体来说,我需要使用较旧的 Google Data JS 库(新的 gapi 库不支持 Contacts API)访问用户的 Google 联系人列表。
javascript - 在 Meteor 中,如何仅在用户使用特定外部服务登录时加载 javascript?
我真正需要的是在用户使用谷歌服务登录时为 javascript 加载谷歌 apis 客户端库。如果用户使用密码或其他外部服务登录,则不会加载库。
这有可能吗?
谢谢。