web-dev-qa-db-ja.com

本番コードでGoogleのJSAPIを使用する必要がありますか?

重複の可能性:

should-i-link-to-google-apis-cloud-for-js-libraries

また、以下を含む他の多くの議論:

どこからjQueryライブラリを含めますか?Google JSAPI?CDN?GoogleのホストされたjQueryを使用する最良の方法ですが、Googleでホストされているライブラリにフォールバックします


Tiny MCEプラグインの例を見ていて、ドキュメントのheadに次のコードがあります。

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
    google.load("jquery", "1.3");
</script>

私はjQueryをロードするこの方法を見たことがありません。

  • これは本番環境に推奨されますか?
  • この方法の利点は何ですか?
19
Frank Krueger

はい、間違いなく。 Googleはそれを奨励しています 。誰もが恩恵を受けます。キャッシュにある可能性が高く、提供する必要のあるファイルが1つ少なくなります。

23
Keith Bentrup

他の人が同様の質問に答えることを指摘しているように、欠点があります。一部の国(イランなど)では、これらは明らかにブロックされており、Webサイトが壊れています。

17
Nosredna

利点は、グーグルの超低遅延で高速なサーバーでホストされていることです。あなたもただ使うことができます

<script type=”text/javascript” src=”https://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js”></script>

同じ効果です。

15
Fusspawn

google jsapiは、ドキュメント自体がロードされた後にのみスクリプトをロードすることに注意してください。

したがって、(たとえば)Webアプリでjqueryの$(document).ready()を使用している場合は、google.setOnLoadCallback()に切り替える必要があります。

12
Amir Arad

Google JSAPIも非同期であり、「ウェブブラウザとインターネット自体の間に4車線の高速道路があると想像してみてください。この高速道路は、写真、テキスト、cssを飛ばすように最適化されています。しかし、外部スクリプトに関しては、高速道路は料金所を作成し、トラフィックを遅くします。最悪の部分は、写真のテキストと、これらのスクリプトの背後にあるcssが通過するまで待たなければならないことです。」-Andres Vidal

料金所は重要であり、常に避ける必要があります。

5
IEnumerator

この方法は、次の理由で大いに役立つと思います。

Googleはコンテンツ配信ネットワークを使用しているため、あなたの場所から遠く離れたユーザーは、あなたのサイトからダウンロードするよりも速くjqueryライブラリをダウンロードできます。

また、サーバーへのリクエストが減り、初めてユーザーがgoogleのサーバーからjquery javascriptをダウンロードできるようになります。ユーザーがこの種の実装で別の同様のサイトにアクセスしたことがある場合は、再度ダウンロードする必要はありません。

だから私はこれがあなたのアプリ/サイトに役立つと思います

3

このファイルは圧縮が24KBになった後です。このようなファイルを追加すると、HTTPリクエストが増加し、応答と実行を待機し、ブラウザにかかる時間を解析します...ファイル自体がどこにでもキャッシュされていると言えば、ファイルがキャッシュされていてもブラウザ、ディスクからの読み取り、実行、解析にかかる時間を考慮することを忘れないでください...

jQueryファイルまたは他の一般的なJSのみを取得するためのこれらすべての場合、要求されたリソースを直接参照する方が良いと思います

詳細については、Googleのベストプラクティスを確認してください。

1

中国には5億人のインターネットユーザーがいて、Google APIをブロックしているのは中国だけではありません。これにより、 http://www.google.com/jsapi を使用するWebサイトが機能しなくなります。小さな利点があります。非同期ロード手法のため、これらのサイトは、次のように直接参照を使用する他のサイトと同じロード待機ハングを表示しません。

1
Jon