我想知道是否有人知道一个好的网络服务,我可以提供一个地址,并返回十进制度的纬度/经度?我一直在尝试使用Google Maps API
,但我找不到使用桌面应用程序(Winforms)返回数据的文档。我使用了WebClient
和WebRequest/WebResponse
两种方式都没有成功。错误是'610:无效键'虽然我正盯着钥匙,只是将其复制/粘贴到参数中 - 包括制作一个新的。似乎Google
不是一个简单的路线,如果可能的话,我想要一个差异选项。任何想法都会很棒。谢谢你的期待。
答案 0 :(得分:2)
桌面应用程序没有单独的东西。所以你正在寻找这个
“https://maps.googleapis.com/maps/api/geocode/的 XML 强>?地址= 您的编码地址& 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中已经大胆所面对的
xml
或json
。注意:使用Google Geocoding API每天的查询限制为2,500次。
希望你有所了解。