2013-01-01 4 views
9

Ich bin verwirrt darüber, wie man Googles APIs richtig lädt. Ich sehe zwei verschiedene Ansätze erwähnt:gapi.client.load versus google.load

Erste: Google API-Lader (https://developers.google.com/loader). Ich sehe das wie so im HTML-Dokument verwendet:

<script src="https://www.google.com/jsapi"></script> 

dann später in einem JS-Datei es wie folgt verwendet wird:

google.load('visualization', '1.0', {'packages':['corechart']}) 

Zweite: Google API Javascript Client (http://code.google.com/p/google-api-javascript-client/).

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

und dann später wie verwendet:

gapi.client.load('fusiontables', 'v1') 

Wenn Sie die Dokumentation für jede dieser beiden APIs ich den Eindruck bekommen, sehen, dass der zweite Ansatz ist die aktuelle "Dieser wird wie geladen moderner Ansatz, während der erste älter ist. Die ältere Methode unterstützt weniger APIs als die neuere, aber sie sind nicht identisch. Ich möchte sowohl Fusion Tabellen als auch Google Charts in meiner Anwendung verwenden. Soweit ich das beurteilen kann, denke ich, dass ich beide APIs laden muss.

Meine Fragen: Sind diese beiden APIs tatsächlich verschieden und unabhängig voneinander? Bin ich richtig, wenn ich die "google.load" -Methoden als ältere "Legacy" -Stücke interpretiere? Wenn ich beide APIs verwenden muss, gibt es Konflikte zwischen ihnen?

Danke für jede Idee!

Antwort

5

Ihre Einschätzung ist korrekt. Diese APIs unterscheiden sich voneinander und es sollte beim Laden beider nicht zu einem Konflikt kommen (obwohl Sie sicherstellen sollten, dass beide ihrer "On-Load" -Methoden ausgelöst wurden, bevor Sie irgendwelche Arbeiten ausführen). Allerdings würde ich die google.load-APIs nicht als "Legacy" bezeichnen; google.load ist ein allgemeiner Mechanismus zum Laden bestimmter Google JS-Clients und spiegelt nicht den Status der zugrunde liegenden Client-Bibliothek wider.

+1

Danke für die Klärung meines "Legacy" -Kommentars. Ich glaube, meine Verwirrung geht wirklich auf die schlechte Dokumentation von Google über die Beziehung zwischen den beiden APIs. Danke für deine Antwort. – Who8MyLunch