2011-01-24 14 views
0

私は単純なタスクを持っていますが、それを取り除くことはできません。私は、ユーザーが自分の住所を入力して、目的地へのルートをGoogleに返すようにするページを用意します。だからステップ1はgoogle maps APIに行き、これがどのように行われたかを見ていた。だから、彼らの例から、私は、次のURLを得た:jQueryとGoogleマップ:AJAXへの道

http://maps.googleapis.com/maps/api/directions/json?origin=Chicago,IL&destination=Los+Angeles,CA&waypoints=Joplin,MO|Oklahoma+City,OK&sensor=false 

ブラウザでこのURLを入れた場合、あなたはJSONの結果を取得します。だから、私の考えは、なぜ私はj​​Query AJAXリクエストでこれを呼び出せないのでしょうか?これは可能ですか?私は以下の要求を試してみましたが、jQueryのスクリプトでエラー「アクセスが拒否されました」GET:

 $.ajax({ 
      type: "POST", 
      url: "http://maps.googleapis.com/maps/api/directions/json?origin=Chicago,IL&destination=Los+Angeles,CA&waypoints=Joplin,MO|Oklahoma+City,OK&sensor=false", 
      success: function (msg) { 
       alert(msg); 
      } 
     }); 

誰もが、構文に問題を参照するか、これが機能しない理由を知っていますか?そして参考までに、これはちょうど最初の質問です。この質問は、他の人がphpを使わずにjqueryとajax経由でGoogleマップを作成するための素晴らしいリソースになることを望みます(他の誰もが使っているようです)。

答えて

2

クロスドメイン$.ajaxを行うには、指定されたURLがJSON-Pをサポートしている必要があります。使用しているURLはJSONのみをサポートしています。

編集:私は間違っていました。ジオコーディングではなく方向を探しています。私はAPIライブラリにあなたのために何かがあるかどうかはわかりませんが、あなたはそれをポックするかもしれません。

https://code.google.com/apis/maps/documentation/javascript/reference.html

https://code.google.com/apis/maps/documentation/geocoding/

(以下ジオコーディングについての情報を無視してください)ジオコーディングが虐待を防止するための

Googleの無効JSON-Pコールバック。適切なリクエストを行うには、GoogleジオコーディングAPIライブラリを使用する必要があります。逆ジオコーディングの目的は、Googleマップに住所を表示することにあります。

+0

クライアント側のWebアプリケーションを操作しているので、Directional APIの代わりにGoogle Maps API Javascriptを使用する必要があります。 – timdream

+0

それは私が思ったことです(私はそれが事実であることを望んでいませんでしたが、私はそれが後ろで私を噛ませるクロスドメイン化であると感じていました)。 リクエストとレスポンスを完全に制御して、すべてのイベントやエラーをカスタムメッセージで処理できるようにしたいと考えましたが、APIを使用する必要があるようです。情報をありがとう。 – Keith

関連する問題