public static string GetLocation(string lat, string lng)
{
//百度api
string url = @"http://api.map.baidu.com/geocoder/v2/?location={0}&output=json&ak=WEc8RlPXzSifaq9RHxE1WW7lRKgbid6Y";
HttpClient client = new HttpClient();
string location = string.Format("{0},{1}", lat, lng);
string bdUrl = string.Format(url, location);
string result = client.GetStringAsync(bdUrl).Result;//异步访问地址信息
var locationResult = (JObject)JsonConvert.DeserializeObject(result);
if (locationResult == null || locationResult["result"] == null || locationResult["result"]["formatted_address"] == null)
return string.Empty;
var address = Convert.ToString(locationResult["result"]["formatted_address"]);
if (locationResult["result"]["sematic_description"] != null)
address += " " + Convert.ToString(locationResult["result"]["sematic_description"]);
return address;
}
调用:
//实例1
var result= GetLocation("0", "0");
Console.WriteLine(result);
//实例2
var result2 = GetLocation("36.2585", "120.27");
Console.WriteLine(result2);
显示结果: