首先我们需要一个控制台添加一个新Key(可使用服务选择Web服务,测试的时候IP白名单先不填);
直线距离是通过后台get方式请求API服务地址http://restapi.amap.com/v3/distance返回得到的
直接上代码:
public string GetdistancesTest()
{
//具体参数可参考官方文档http://lbs.amap.com/api/webservice/guide/api/direction#distance
var client = new WebClient();
var origins = "116.481028,39.989643|114.481028,39.989643|115.481028,39.989643";//起点,多个起点之间使用|分隔
var destination = "114.465302,40.004717";//单个终点
var type = "";//返回类型,0:直线距离1:驾车导航距离2:公交规划距离3:步行规划距离
var output = "JSON";//可选值:JSON,XML
var key = Key;//个人控制台含有web服务的key
string disApiurl = string.Format("http://restapi.amap.com/v3/distance?origins={0}&destination={1}&type={2}&output={3}&key={4}", origins, destination, type, output, key);
return client.DownloadString(disApiurl);
}
返回的JSON数据如下为
{"status":"1","info":"OK","infocode":"10000","results":[{"origin_id":"1","dest_id":"1","distance":"171904","duration":"0"},{"origin_id":"2","dest_id":"1","distance":"2148","duration":"0"},{"origin_id":"3","dest_id":"1","distance":"86636","duration":"0"}]}
可以明显看到得到包含我们需要的直线距离数据了(单位:米)