0

私は現在、ユーザーが地図上の特定の位置をマークできる小さなコミュニティを構築しています。

マップ ポイントを保存するには、緯度/経度をデータベースに保存する必要がありますが、ユーザーは緯度/経度を知らないため、(リバース) ジオコーディング API を使用する必要があります。

geonames.org を調べましたが、全文検索の結果は...まあ、あまり良くありません。たとえば、「München」を検索すると、同じタイトル/名前で約 5 件の結果が得られます。

Google Maps Api で同じ都市をテストしたところ、結果がずっと良くなったので、Google Gecoder を使用したいと考えています。

残っている唯一の問題は、ドキュメントページに制限が記載されていることです-最大2500リクエスト/日です。

たくさん聞こえるかもしれませんが、私のコミュニティが大きくなれば、それほど多くはありません...

私の質問は、ゲストの IP アドレスを使用して Google Maps Api にジオコード リクエストを送信することは可能ですか?

現在、何かをジオコーディングする「私の方法」は、AJAX (jQuery) を介して別の PHP ファイルを取得し、検索文字列をそれに渡すことです。次に、PHP ファイルは「simplexml_load_file」で結果を取得し、それをメイン ドキュメントに返します。

このジオコーダーを見ると: http://www.gpsvisualizer.com/geocoder/

フッターに次の説明が表示されます: 「このフォームは JavaScript オンデマンド (JSON) コードを使用しており、(gpsvisualizer.com ではなく) お使いの Web ブラウザーが要求を行うものであるため、クエリはカウントされません。サーバーの制限に違反しています。」

4

2 に答える 2

0

さて、私は何かを見つけました。ケビンBは正しかったようです。

これを見てください:https ://developers.google.com/maps/articles/geocodestrat?hl = de

それによると...

クライアント側のジオコーディングを使用する場合

基本的な答えは「ほとんど常に」です。ジオコーディングの制限はユーザーセッションごとであるため、ユーザーベースの拡大に伴ってアプリケーションがグローバル制限に達するリスクはありません。ユーザーセッション内でジオコーディング要求のバッチを実行しない限り、クライアント側のジオコーディングは割り当て制限に直面しません。したがって、クライアント側のジオコーディングを実行すると、通常、割り当てについて心配する必要はありません。

... Javascript APIを使用するだけで、それは可能です。

ユーザーが「Paris、France」を検索すると、GoogleJSAPIがlat/lngを返し、DB(Caching)に保存してGoogleマップに表示するので、サーバー側のジオコーディングリクエストは必要ありません。

于 2012-11-15T07:50:32.307 に答える
0

短い: いいえ、申し訳ありません。

別の方法: ブラウザの javascript geolocationAPI を (サポートされている限り) 使用して座標を取得することもできます。これにより、たとえば、Google ジオコーダー API を使用できます。いくつかの出発点はここにあります:サポートとリンクのページ

注: ユーザーは Google マップ ウィジェットを使用して自分の位置をマークする場合があり、そこで座標を取得することもできます。

于 2012-11-14T16:36:40.030 に答える