2015-10-22 40 views
3

A)<script src="https://apis.google.com/js/api:client.js"></script>这两个Google JS客户端CDN有什么区别?

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

唯一differnence作为api:之前client.js

CDN 一个谷歌登录在用于网站docs建立一个按钮,自定义图形部分。

CDN 在对JavaScript(测试版)docs的谷歌API客户端库几乎使用。

它们似乎可以互换使用。

回答

13

简短的回答:没有区别

龙答:

的谷歌JS客户CDN是一个有点古怪,因为根据您提供的文件名是动态创建的,你得到实际的JS。 您可以通过构建网址为module1:module2:module3.js

api加载库的多个组件的核心部分,总是加载,即使你不将它添加到模块的列表,因为它处理加载其他模块。

理论上你可以只包括api.js,然后通过调用gapi.load("module", callback)动态加载额外的模块,也就是当你加载api:client.js或只是client.js

例如,如果你想与一起使用的API客户端库究竟发生了什么新的登录方法可包括api:client:auth2.jsclient:auth2.js

而对于额外的混乱,你甚至可以包括https://apis.google.com/js/.js这是相同的,因为只有从文档https://apis.google.com/js/api.js

2

使用链接!

简单检查:

1)添加到标题你的页面的这个脚本:

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

开放DevTools - >网络 我看到:

for client.js

2 )将链接更改为其他脚本

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

打开DevTools - >网络

我看到:

enter image description here

api.js是核心,当client.js是模块。

这里有一个完全不同的内容:https://apis.google.com/js/platform.js

+1

这是非常有用的。是否有关于client.js,platform.js和其他库之间差异的文档,以及何时需要哪些?如果我想使用身份验证并访问我自己的云端点,我只需加载'api:client:platform.js'? – rakensi

+0

@rakensi您可以查看此示例(https://developers.google.com/api-client-library/javascript/samples/samples)。当我们仅使用api.js时,其他库如客户端API会异步下载。从文档引用:“”“如果需要,gapi.client.init函数会延迟加载auth2。如果您确定您的应用需要auth,请在调用gapi.client.init之前一起加载两个模块的客户端:auth2'将保存一个脚本加载请求。“”“ – artamonovdev

+1

谢谢,artamonovdev。我希望谷歌更清楚地记录JavaScript客户端。我现在使用未公开的'gapi.client.load(name,version,callback,apiRoot)'来加载我自己的库,我希望这将继续是可能的,因为3参数方法'gapi.client.load'已被弃用。您提到的示例有时会有所帮助,但我宁愿拥有全面的API文档。 – rakensi