赞
踩
1.地址
添加链接描述
2.开始注册账号
3.申请AK


1.Web服务API

说明:百度API会介绍接口都是在什么情况下使用
2.地理编码(就是介绍使用地址返回经纬度的接口说明)

/// <summary> /// 地理编码 /// </summary> /// <param name="DetailedAddress"></param> /// <returns></returns> public void GetGeocoding(string DetailedAddress) { try { string url = "http://api.map.baidu.com/geocoding/v3/?"; List<GeocodingResultJson> listGeocoding = new List<GeocodingResultJson>(); string[] DetailedCount = DetailedAddress.Split(','); for (int i = 0; i < DetailedCount.Length; i++) { if (!string.IsNullOrEmpty(DetailedCount[i])) { GeocodingResultJson Geocoding = new GeocodingResultJson(); StringBuilder str = new StringBuilder(); str.Append(url); str.Append("address=" + DetailedCount[i] + "&output=json&ak=" + BaiDuAK + ""); string ResultParameter = HttpUtils.DoGet(str.ToString(), null, "").ToString(); if (!string.IsNullOrEmpty(ResultParameter)) { ApiGeocodingJson resultJsonData = Newtonsoft.Json.JsonConvert.DeserializeObject<ApiGeocodingJson>(ResultParameter); if (resultJsonData.status == 0) { Geocoding.Detaile = DetailedCount[i]; Geocoding.lat = resultJsonData.result.location.lat; Geocoding.lng = resultJsonData.result.location.lng; Geocoding.State = 0; Geocoding.Content = "访问BaiDu接口成功"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据:访问BaiDu接口成功"); } else if (resultJsonData.status == 1) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "访问BaiDu接口失败"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据:访问BaiDu接口失败"); } else if (resultJsonData.status == 2) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "请求参数非法"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据:请求参数非法"); } else if (resultJsonData.status == 3) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "权限校验失败"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据:权限校验失败"); } else if (resultJsonData.status == 4) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "配额校验失败"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据:配额校验失败"); } else if (resultJsonData.status == 5) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "ak不存在或者非法"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据ak不存在或者非法"); } else if (resultJsonData.status.ToString() == "101") { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "服务禁用"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据服务禁用"); } else if (resultJsonData.status == 102) { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "不通过白名单或者安全码不对"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据不通过白名单或者安全码不对"); } else if (resultJsonData.status.ToString() == "2xx") { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "无权限"; Log.CreateLogManager().Error("" + DetailedCount[i] + "地址,请求数据无权限"); } else if (resultJsonData.status.ToString() == "3xx") { Geocoding.Detaile = DetailedCount[i]; Geocoding.State = 1; Geocoding.Content = "配额错误"; Log.CreateLogManager().Error(""+ DetailedCount[i] + "地址,请求数据配额错误"); } listGeocoding.Add(Geocoding); } } } } catch (Exception ex) { Log.CreateLogManager().Error("接口异常:" + ex); } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。