gpt4 book ai didi

javascript - 使用不带元数据标签的 google-signin

转载 作者:行者123 更新时间:2023-11-30 12:03:34 27 4
gpt4 key购买 nike

我正在尝试使用没有元数据标签的谷歌登录库。 (解释在最后)

我似乎基本上可以正常工作,但是当我的页面加载时,我遇到了一个未捕获的异常:

Missing required parameter 'client_id'

尽管我没有在元数据中指定客户端 ID,但 auth 库显然仍在尝试初始化。

是否有任何方法可以关闭库,以便它在我调用 gapi.auth2.init 之前尝试初始化功能?

为什么我不想使用元数据标签

我有来自 docs 的示例工作得很好,但我想将这个库合并到我的 Angular 应用程序中,该应用程序使用 Angular 服务登录。我希望我的 Angular 服务控制库何时初始化、何时登录并处理结果。使用元数据标签的示例很棒,但似乎没有给我太多控制权就可以自行完成所有事情。例如,我想要一个加载状态,因为库正在初始化和登录,我不想显示登录按钮,直到这个初始状态被解析。

最佳答案

使用声明式方法和框架加载 Google 登录按钮往往是一个问题。我建议您尝试命令式方法。

我想你有

<div class="g-signin2"></div>

<script src="https://apis.google.com/js/platform.js"></script>

你应该做的是:

  1. 删除 .g-signin2 并指定一个 ID。因为库会自动检测 g-signin2 并尝试用按钮小部件替换它。
  2. 使用 JavaScript,将函数绑定(bind)到调用手动登录的按钮。
  3. 在您感觉舒服的时候进行手动初始化(例如,在框架完全加载之后)。客户端 ID 可以作为 auth2.init() 参数的一部分包含在内。

您可以在此处找到详细信息。 https://developers.google.com/identity/sign-in/web/build-button

FWIW,您可以使用 https://apis.google.com/js/api.js 而不是 platform.jsplatform.js 适用于您想要使用小部件的情况。

关于javascript - 使用不带元数据标签的 google-signin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35983283/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com