两个 Google JS 客户端 CDN 之间有什么区别?

What is the difference between the two Google JS client CDN's?

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

对比

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

唯一的区别是 client.js 之前的 api:

CDN A用于Google网站登录docs使用自定义图形构建按钮 部分。

CDN B 几乎用在 Google API Client Library for JavaScript (测试版)docs.

它们似乎可以互换使用。

简答:没有区别

长答案:

GoogleJS客户端CDN有点奇怪,因为你得到的实际JS是根据你提供的文件名动态创建的。 您可以通过将 URL 构造为 module1:module2:module3.js

来加载库的多个组件

api 是核心部分,即使您不将其添加到模块列表中,它也会始终被加载,因为它负责加载其他模块。

理论上,您可以只包含 api.js,然后通过调用 gapi.load("module", callback) 动态加载额外的模块,这正是您加载 api:client.jsclient.js[= 时发生的情况20=]

例如,如果您想将 API 客户端库与新的登录方法一起使用,您可以包括 api:client:auth2.jsclient:auth2.js.

为了更加混乱,您甚至可以包括 https://apis.google.com/js/.js,它与 https://apis.google.com/js/api.js

相同

仅使用文档中的 links!

检查这个很简单:

1) 添加到您页面的 header 这个脚本:

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

打开 DevTools -> 网络 我看到了:

2) 将link更改为其他脚本

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

打开 DevTools -> 网络

我明白了:

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

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