gpt4 book ai didi

jquery - 为什么来自 Google Plus Api 的 'gapi.client' 未定义?

转载 作者:行者123 更新时间:2023-12-03 22:21:41 25 4
gpt4 key购买 nike

我正在尝试使用 google+ api,并且我必须修改示例身份验证示例以满足我的需求,如下所示:

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

而不是这个:

<script src="https://apis.google.com/js/client.js?onload=handleClientLoad"></script>

基本上删除了 onload 参数,并将所有功能放在 dom 上。

这是我不明白的问题:

代码:

console.log(gapi);
console.log(gapi.client);

$.each(gapi, function(){

console.log(this);

});

gapi.client.setApiKey(this.options.apiKey);

输出:

enter image description here

所以,我的问题基本上是:

为什么在 console.log(gapi) 中显示它有 client 和 auth 等子对象,而在 console.log(gapi.client) 中显示未定义?

最佳答案

必须使用?onload回调参数,它会在JS Client异步加载完成时调用。通过在 dom Ready 上运行,您将尝试在定义 gapi.client 之前访问它。发生的情况是/js/client.js 脚本定义了gapi和一些辅助函数,但gapi.client和gapi.auth在JS客户端完成加载之前才定义。当您检查console.log(gapi)记录的对象时,客户端已完成加载,因此您会看到gapi.client和gapi.auth已定义。

关于jquery - 为什么来自 Google Plus Api 的 'gapi.client' 未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12874491/

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