7

JavaScriptを使用する場合とAPIを直接呼び出す場合の、 Google Places Library / Serviceへの2つの参照形式を何度も見てきましたが、違いがわかりません。Googleドキュメントでは、APIにアクセスする2つの方法については何も説明されていません。

たとえば、この質問では、APIにアクセスする2つの方法について説明しています。ループ内のOVER_QUERY_LIMIT

そして、この質問では、ある種の直接Webアクセスが行われているようです。jQueryを使用したGooglePlacesAPIのクエリ

これは、URLパラメータのフォーマットを伴う古い方法があり、新しい方法はJavaScriptライブラリ呼び出しを利用することによるものですか?

最終的な概要の編集:以下の@Dan Nissenbaumの回答で説明されているように、Googleにデータをリクエストする方法は2つあります。そして、私の最初の質問以来、上記で参照されたQUERY_LIMIT質問は、2つのオプションに関する詳細情報も含むように編集されています。

4

2 に答える 2

6

おそらく、SERVER での使用を意図した Google Places API (つまり、PHP を使用して Google Places API を直接呼び出す) と、BROWSER がGoogle が提供する Javascript ライブラリを使用して Javascript を実行します (Google Places API への呼び出しを内部的にラップするため、Javascript プログラマーは、Google が提供する Javascript ライブラリを理解し、それを使用するだけで済みます)。

ここに 2 つのシナリオがあります。

シナリオ #1: API を直接使用します。この方法については、Google Places API に関する Google の API ドキュメント ( https://developers.google.com/maps/documentation/places/ ) を参照する必要があります。

この API を使用すると、次のように機能します (簡単な例のみを示します)。緯度=-27.2531166、経度=138.8655664 の 1000 メートル以内の場所を取得したいとします。API ドキュメントで説明されているように、URL をヒットする必要があります: https://developers.google.com/maps/documentation/places/#PlaceSearchRequests

この例では、URL は次のようになります (長いです)。

https://maps.googleapis.com/maps/api/place/search/json?location=-27.2531166,138.8655664&radius=1000&sensor=false&key=AddYourOwnKeyHere

私はあなたが持っていると思います。結果をレストランに限定するなど、指定できる他のオプションがあります。

この URL にアクセスすると、上記の URL のテキストで指定されているように、JSON または XML 形式でデータが返されますjson(xml にはテキストを使用しますxml)。このデータは、ブラウザーで URL をヒットしたときに URL 呼び出しから返されるデータとまったく同じように返されます。

ブラウザに URL を直接入力するだけでこれをテストし、結果を確認できます。

API をコードから直接使用するには、コード内で上記の外部 URL にアクセスし、コード内で結果を取得するコードを使用する必要があります (たとえば、PHP CURL ライブラリを使用するか、Javascript で AJAX を使用します)。

シナリオ #2: Google が提供する API をラップする Javascript ライブラリを使用するため、それを処理する必要はありません。これが何であるかわからない場合は、これに関する詳細で回答を更新します。

于 2012-05-02T21:23:16.960 に答える
2

ドキュメントでは、2 つの異なるアプローチについて説明しています。Places Library は、JavaScript Google Maps API 内から Google Places サービスを利用します。ブラウザで Google Maps API を使用している場合は、おそらく次の方法が適しています: https://developers.google.com/maps/documentation/javascript/places

アプリケーションから直接クエリを実行できる Web サービスもあります。Google サービスへの直接の http 呼び出しを使用してクエリを実行します。サーバーまたはモバイル デバイス上のデータにアクセスする必要がある場合は、次の方法を使用してください: https://developers.google.com/maps/documentation/places

于 2012-05-02T21:53:27.380 に答える