http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding
city
| 否 | “北京市” | “广州市” | 地址所在的城市名。用于指定上述地址所在的城市,当多个城市都有上述地址时,该参数起到过滤作用。 |
对于address字段可能会出现中文或其它一些特殊字符(如:空格),对于类似的字符要进行编码处理,编码成 UTF-8 字符的二字符十六进制值,凡是不在下表中的字符都要进行编码。
| 字符集合 | 字符 |
|---|---|
| URL非保留字 | a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 - _ . ~ |
| URL保留字 | ! * ' ( ) ; : @ & = + $ , / ? % # [ ] |
附注:
1、javascript中一般采用encodeURIComponent函数对特殊字符进行编码;
2、Java中可以使用函数URLEncoder.encode对特殊字符进行编码;
3、C#中可以使用函数HttpUtility.UrlEncode对特殊字符进行编码;
4、php中可以使用函数urlencode对特殊字符进行编码。
地理编码示例:
以下是关于地理编码参数使用方法的示例。发送请求显示结果的JavaScript代码此处查看。
请求示例:对北京市百度大厦进行地理编码查询;
http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderOption&output=json&address=百度大厦&city=北京市
地理编码返回结果字段:
| 名称 | 类型 | 说明 | |
| status | Int | 返回结果状态值, 成功返回0,其他值请查看下方返回码状态表。 | |
| location | object | 经纬度坐标 | |
| lat | float | 纬度值 | |
| lng | float | 经度值 | |
| precise | Int | 位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点。 | |
| confidence | Int | 可信度,描述打点准确度 | |
| level | string | 地址类型 | |
json格式的返回值:
//带回调函数的返回格式
showLocation&&showLocation(
{
status: 0,
result: {
location: {
lng: 116.30814954222,
lat: 40.056885091681
},
precise: 1,
confidence: 80,
level: "商务大厦"
}
}
)
//不带回调函数的返回值
{
status: 0,
result: {
location: {
lng: 116.30814954222,
lat: 40.056885091681
},
precise: 1,
confidence: 80,
level: "商务大厦"
}
}
xml格式的返回值:
<GeocoderSearchResponse> <status>0</status> <result> <location> <lat>40.056885091681</lat> <lng>116.30814954222</lng> </location> <precise>1</precise> <confidence>80</confidence> <level>商务大厦</level> </result> </GeocoderSearchResponse>
特别说明:若解析status字段为OK,但结果内容为空,原因分析及可尝试方法:1、地址库里无此数据,本次结果为空;2、加入city字段重新解析;3、将过于详细或简单的地址更改至省市区县街道重新解析。
逆地理编码服务
逆地理编码专属请求参数:
| 参数 | 是否必须 | 默认值 | 格式举例 | 含义 |
|---|---|---|---|---|
| coordtype | 否 | bd09ll | bd09ll 百度经纬度坐标 | 坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标)、wgs84ll( GPS经纬度) |
| location | 是 | 无 | 38.76623,116.43213lat<纬度>,lng<经度> | 根据经纬度坐标获取地址 |
| pois | 否 | 0 | 0 | 是否显示指定位置周边的poi,0为不显示,1为显示。当值为1时,显示周边100米内的poi。 |
状态字段:
| 名称 | 类型 | 说明 |
|---|---|---|
| status | constant | 返回结果状态值, 成功返回0,其他值请查看附录。 |
| location | lat | 纬度坐标 |
| lng | 经度坐标 | |
| formatted_address | 结构化地址信息 | |
| business | 所在商圈信息,如 "人民大学,中关村,苏州街" | |
| addressComponent | country | 国家 |
| province | 省名 | |
| city | 城市名 | |
| district | 区县名 | |
| street | 街道名 | |
| street_number | 街道门牌号 | |
| adcode | 行政区划代码 | |
| country_code | 国家代码 | |
| direction | 和当前坐标点的方向,当有门牌号的时候返回数据 | |
| distance | 和当前坐标点的距离,当有门牌号的时候返回数据 | |
| pois(周边poi数组) | addr | 地址信息 |
| cp | 数据来源 | |
| direction | 和当前坐标点的方向 | |
| distance | 离坐标点距离 | |
| name | poi名称 | |
| poiType | poi类型,如’ 办公大厦,商务大厦’ | |
| point | poi坐标{x,y} | |
| tel | 电话 | |
| uid | poi唯一标识 | |
| zip | 邮编 | |
| sematic_description | constant | 当前位置结合POI的语义化结果描述。 |
json示例:
xml示例:
特别说明:
1、因为Geocoding和反Geocoding使用的门址数据以及算法都不是一样的,所以会出现不能一一对应的现象。
2、逆地址解析location参数传入的参数格式是(纬度lat,经度lng)。
返回码状态表
| 返回码 | 定义 |
|---|---|
| 0 | 正常 |
| 1 | 服务器内部错误 |
| 2 | 请求参数非法 |
| 3 | 权限校验失败 |
| 4 | 配额校验失败 |
| 5 | ak不存在或者非法 |
| 101 | 服务禁用 |
| 102 | 不通过白名单或者安全码不对 |
| 2xx | 无权限 |
| 3xx | 配额错误 |
升级说明
v2版本较之v1版本,功能更新详见更新日志。若需查看v1文档,请点击目录 “Geocoding APIv1.0”。
若v1版本升级至v2版本,地理/逆地理编码的请求url,参数:新增版本号“v2”,修改“key”为“ak”。v2不兼容v1版本的key,若需升级,请重新获取密钥。
2317

被折叠的 条评论
为什么被折叠?



