全球逆地理编码服务提供将坐标点(经纬度)转换为对应位置信息(如所在行政区划,周边地标点分布)功能。
2021年7月27日起,全球逆地理编码返回的行政区划按照民政部标准进行更新,将不包含工业园区、经济开发区等区域。如果您对工业园区等区划范围有特殊需要, 可以进行反馈。
https://api.map.baidu.com/reverse_geocoding/v3/?ak=您的ak&output=json&coordtype=wgs84ll&location=31.225696563611,121.49884033194
//get请求
注意:当前为v3.0版本接口文档,v2.0及以前版本自2019.6.18起新用户无法使用。老用户仍可继续使用v2.0及以前版本请求实现全球逆地理编码服务,为保障用户体验,建议您尽快迁移到v3.0版本。
如在使用v3.0 时“鉴权失败“ 可在”“->"查看应用"->“设置” 确认是否已获得“全球逆地理编码服务”权限。 如有其他问题,可通过“”反馈给我们。
参数名称 | 参数含义 | 示例 | 类型 | 默认值 | 必选 |
---|---|---|---|---|---|
location | 根据经纬度坐标获取地址。 | 38.76623,116.43213lat<纬度>,lng<经度> | string | 无 | 是 |
coordtype | 坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标,仅限中国)、wgs84ll( gps经纬度)凯发k8官方旗舰厅-凯发app官方网站 | bd09ll、gcj02ll | string | bd09ll | 否 |
ret_coordtype | 可选参数,添加后返回国测局经纬度坐标或百度米制坐标 凯发k8官方旗舰厅-凯发app官方网站 | gcj02ll(国测局坐标,仅限中国)、bd09mc(百度墨卡托坐标) | string | bd09ll(百度经纬度坐标) | 否 |
radius | poi召回半径,允许设置区间为0-1000米,超过1000米按1000米召回。 | 500 | int | 1000 | 否 |
ak | 用户申请注册的key,自v2开始参数修改为“ak”,之前版本参数为“key” | e4805d16******93a3fe70 | string | 无 | 是 |
sn | 若用户所用ak的校验方式为sn校验时该参数必须sn生成 | string | 无 | 否 | |
output | 输出格式为json或者xml | json或xml | string | xml | 否 |
callback | 将json格式的返回值通过callback函数返回以实现jsonp功能 | callback=showlocation(javascript函数名) | string | 无 | 否 |
poi_types | 可以选择poi类型召回不同类型的poi,例如poi_types=酒店,如想召回多个poi类型数据,可以‘|’分割 | poi_types=酒店 | string | 无 | 否 |
extensions_poi | extensions_poi=0,不召回pois数据。 | 0 | string | 无 | 否 |
extensions_road | 当取值为true时,召回坐标周围最近的3条道路数据。 | false、true | string | false | 否 |
extensions_town | 当取值为true时,行政区划返回乡镇级数据(town),仅国内召回乡镇数据。当取值为false时,行政区划不返回乡镇级数据(town) | true、false | string | true | 否 |
language | 指定召回的行政区划语言类型。 召回行政区划语言list(全量支持的语言见示例)。 当language=local时,根据请求中坐标所对应国家的母语类型,自动选择对应语言类型的行政区划召回。 | el gu en vi ca it iw sv eu ar cs gl id es en-gb ru sr nl pt tr tl lv en-au lt th ro fil ta fr bg hr bn de hu fa hi pt-br fi da ja te pt-pt ml ko kn sk zh-cn pl uk sl mr local | string | en,国内默认zh-cn | 否 |
language_auto | 当用户指定language参数时,是否自动填充行政区划。 | 0、1 | int | 无 | 否 |
返回参数 | 类型 | 备注 | |||
---|---|---|---|---|---|
status | int | 本次api访问状态,如果成功返回0,如果失败返回其他数字。(见服务状态码) | |||
result | object | 返回的结果 | |||
location | object | 经纬度坐标 | |||
lng | float | 经度值 | |||
lat | float | 纬度值 | |||
formatted_address_poi | string | 结构化地址(包含poi信息)。需设置extensions_poi=1才能返回。如果需要详细的地址描述,推荐使用这个参数。 | |||
formatted_address | string | 结构化地址(不包含poi信息)。如果需要标准的结构化地址,比如获取xx路xx号,推荐使用这个参数 | |||
edz | object | 所属开发区 | |||
name | string | 开发区/工业区等非行政区划区域名称 | |||
business | string | 坐标所在商圈信息,如 "人民大学,中关村,苏州街"。最多返回3个。 | |||
addresscomponent | object | 注意,国外行政区划,字段仅代表层级 | |||
country | string | 国家 | |||
country_code | int | 国家编码 | |||
country_code_iso | string | 国家英文缩写(三位) | |||
country_code_iso2 | string | 国家英文缩写(两位) | |||
province | string | 省名 | |||
city | string | 城市名 | |||
city_level | int | 城市所在级别(仅国外有参考意义。国外行政区划与中国有差异,城市对应的层级不一定为『city』。country、province、city、district、town分别对应0-4级,若city_level=3,则district层级为该国家的city层级) | |||
district | string | 区县名 | |||
town | string | 乡镇名,需设置extensions_town=true时才会返回 | |||
town_code | string | 乡镇id | |||
street | string | 道路名 | |||
street_number | string | 道路门牌号 | |||
adcode | int | 行政区划代码,前往下载 | |||
direction | string | 相对当前坐标点的方向,当有门牌号的时候返回数据 | |||
distance | string | 相对当前坐标点的距离,当有门牌号的时候返回数据 | |||
pois | 周边poi数组 | ||||
addr | string | 地址信息 | |||
cp | string | 数据来源(已废弃) | |||
direction | string | 和当前坐标点的方向 | |||
distance | int | 离坐标点距离 | |||
name | string | poi名称 | |||
tag | string | poi类型,如’美食;中餐厅’。tag与poitype字段均为poi类型,建议使用tag字段,信息更详细。 | |||
point | float | poi坐标{x,y} | |||
tel | int | 电话 | |||
uid | string | poi唯一标识 | |||
zip | int | 邮编 | |||
parent_poi | object | poi对应的主点poi(如,海底捞的主点为上地华联,该字段则为上地华联的poi信息。如无,该字段为空),包含子字段和pois基础召回字段相同。 | |||
roads | array | ||||
name | string | 周边道路名称 | |||
distance | string | 传入的坐标点距离道路的大概距离 | |||
poiregions | |||||
direction_desc | string | 请求中的坐标与所归属区域面的相对位置关系 | |||
name | string | 归属区域面名称 | |||
tag | string | 归属区域面类型 | |||
distance | int | 离坐标点距离 | |||
uid | string | poi唯一标识 | |||
sematic_description | string | 当前位置结合poi的语义化结果描述。需设置extensions_poi=1才能返回。 | |||
citycode | int | 百度定义的城市id(正常更新与维护,但建议使用adcode) |
输入ak可生成包含ip/sn校验方式的代码
<?php// 此处填写你在控制台-应用管理-创建应用后获取的ak$ak ='您的ak';// 发起一个http get请求,并返回请求的结果// $url字段为请求的地址// $param字段为请求的参数functionrequest_get($url ='', $param =array()){if(empty($url)||empty($param)){returnfalse;}$geturl = $url ."?".http_build_query($param);$curl =curl_init();// 初始化curlcurl_setopt($curl,curlopt_ssl_verifypeer,false);// 跳过证书检查curl_setopt($curl,curlopt_ssl_verifyhost,2);// 从证书中检查ssl加密算法是否存在curl_setopt($curl,curlopt_url, $geturl);// 抓取指定网页curl_setopt($curl,curlopt_timeout,1000);// 设置超时时间1秒curl_setopt($curl,curlopt_returntransfer,1);// curl不直接输出到屏幕curl_setopt($curl,curlopt_header,0);// 设置header$data =curl_exec($curl);// 运行curlif(!$data){print("an error occured in function request_get(): ".curl_error($curl)."\n");}curl_close($curl);return $data;}// 请求地址$url ='https://api.map.baidu.com/reverse_geocoding/v3';// 构造请求参数$param['ak']= $ak;$param['output']='json';$param['coordtype']='wgs84ll';$param['location']='31.225696563611,121.49884033194';$res =request_get($url, $param);// 将原始返回的结果打印出来print("请求的原始返回结果为:\n");print($res ."\n");?>
{"status":0,"result":{"location":{"lng":121.50989077799083,"lat":31.22932842411674},"formatted_address":"上海市黄浦区中山南路187","edz":{"name":""},"business":"外滩,陆家嘴,董家渡","addresscomponent":{"country":"中国","country_code":0,"country_code_iso":"chn","country_code_iso2":"cn","province":"上海市","city":"上海市","city_level":2,"district":"黄浦区","town":"小东门街道","town_code":"310101017","distance":"91","direction":"东北","adcode":"310101","street":"中山南路","street_number":"187"},"pois":[],"roads":[],"poiregions":[],"sematic_description":"","formatted_address_poi":"","citycode":289}}
参数 | 值 | 备注 | 必选 |
---|---|---|---|
location | 根据经纬度坐标获取地址。 | 是 | |
coordtype | 坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标,仅限中国)、wgs84ll( gps经纬度)凯发k8官方旗舰厅-凯发app官方网站 | 否 | |
output | 输出格式为json或者xml | 否 |
0 | 正常 | 服务请求正常召回 |
1 | 服务器内部错误 | 该服务响应超时或系统内部错误,请留下凯发k8官方旗舰厅的联系方式 |
2 | 参数错误 | 坐标类型错误,location格式错误 |
10 | 上传内容超过8m | post上传数据不能超过8m |
101 | ak参数不存在 | 请求消息没有携带ak参数 |
102 | mcode参数不存在,mobile类型mcode参数必需 | 对于mobile类型的应用请求需要携带mcode参数,该错误码代表服务器没有解析到mcode |
200 | app不存在,ak有误请检查再重试 | 根据请求的ak,找不到对应的app |
201 | app被用户自己禁用,请在控制台解禁 | |
202 | app被管理员删除 | 恶意app被管理员删除 |
203 | app类型错误 | 当前api控制台支持server(类型1), mobile(类型2, 新版控制台区分为mobile_android(类型21)及mobile_iphone(类型22))及browser(类型3),除此之外其他类型认为是app类型错误 |
210 | app ip校验失败 | 在申请server类型应用的时候选择ip校验,需要填写ip白名单,如果当前请求的ip地址不在ip白名单或者不是0.0.0.0/0就认为ip校验失败 |
211 | app sn校验失败 | server类型app有两种校验方式ip校验和sn校验,当用户请求的sn和服务端计算出来的sn不相等的时候提示sn校验失败 |
220 | app referer校验失败 | 浏览器类型的app会校验referer字段是否存且切在referer白名单里面,否则返回该错误码 |
230 | app mcode码校验失败 | 服务器能解析到mcode,但和数据库中不一致,请携带正确的mcode |
240 | app 服务被禁用 | 用户在api控制台中创建或设置某app的时候禁用了某项服务,若需开通权限,可进入为ak勾选对应服务 |
250 | 用户不存在 | 根据请求的user_id, 数据库中找不到该用户的信息,请携带正确的user_id |
251 | 用户被自己删除 | 该用户处于未激活状态 |
252 | 用户被管理员删除 | 恶意用户被加入黑名单 |
260 | 服务不存在 | 服务器解析不到用户请求的服务名称 |
261 | 服务被禁用 | 该服务已下线,请在控制台确认是否有该服务的权限。 |
302 | 天配额超限,限制访问 | 配额超限,如果想增加配额请 |
401 | 当前并发量已经超过约定并发配额,限制访问 | 并发控制超限,请控制并发量或 |
上一篇
下一篇
本篇文章对您是否有帮助?