住所を提供でき、緯度/経度を 10 進法で返す優れた Web サービスを誰かが知っているかどうか疑問に思っていました。で遊んでみましたGoogle Maps API
が、デスクトップ アプリ (Winforms) を使用してデータを返すためのドキュメントが見つかりません。私は両方WebClient
のWebRequest/WebResponse
方法を使用しましたが、成功しませんでした。エラーは「610:無効なキー」ですが、キーをじっと見つめていて、それをコピーしてパラメーターに貼り付けただけです-新しいキーを作成することも含まれます。Google
簡単なルートではないようで、可能な場合は差分オプションが欲しいです。どんなアイデアでも素晴らしいでしょう。ご覧いただきありがとうございます。
2099 次
1 に答える
2
Google Geocoding API v3を探しています
デスクトップアプリケーションには別のものはありません。だからあなたはまさにこれを探しています
" https://maps.googleapis.com/maps/api/geocode/xml ?address= あなたのencodedAddress & sensor=false"
で使用した簡単な例を次に示しC#
ます。
string address = "your address";
encodedAddress = HttpUtility.UrlEncode(address).Replace("+", "%20");
string googleApiURL = "https://maps.googleapis.com/maps/api/geocode/" + "xml?address=" + encodedAddress + "&sensor=false";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(googleApiURL);
request.Timeout = 10000;
request.Method = "GET";
WebResponse response = request.GetResponse();
if (response != null)
{
//Parse here to to capture the lat and long
}
else
{
//Handle if don't get response
}
に変換するのは難しくありませんVB.NET
。
ここでの重要な部分は、XML/JSON 応答をどのように解析するかということです。既に URL で太字に直面しているように
- Google は 2 つの異なる応答
xml
またはを提供しますjson
。 - アドレスをエンコードすることを忘れないでください。
注: Google Geocoding API の使用には、1 日あたり 2,500 リクエストのクエリ制限が適用されます。
あなたがいくつかのアイデアを持っていることを願っています。
于 2013-07-20T12:35:18.987 に答える