web前端 腾讯地图 根据详细地址获取经纬度
先去腾讯地图官网申请开发**(Key)
根据提示来操作就好。
申请完后继续以下操作:
//jsonp的跨域请求
$.ajax({
type: "get",
dataType: 'jsonp',
data: {
key: "", // 填申请到的key
address: "", //具体的地址
output: 'jsonp' //返回格式:支持JSON/JSONP,默认JSON
},
jsonp: "callback",
jsonpCallback: "QQmap",
url: "https://apis.map.qq.com/ws/geocoder/v1/?",
success: function (json) {
if(json.status == 0) {
lat = json.result.location.lat;
lng = json.result.location.lng;
console.log('经度:', lat);
console.log('纬度:', lng);
} else {
alert('错误信息:', json.message);
}
},
error: function (err) {
alert("异常错误,请刷新浏览器后重试");
}
})
地址解析(地址转坐标) 官方文档地址: https://lbs.qq.com/webservice_v1/guide-geocoder.html
请求URL
该请求为GET请求
https://apis.map.qq.com/ws/geocoder/v1/?address=
请求参数
参数 | 必填 | 说明 | 示例 |
---|---|---|---|
address | 是 | 地址(注:地址中请包含城市名称,否则会影响解析效果) | address=北京市海淀区彩和坊路海淀西大街74号 |
region | 否 | 指定地址所属城市 | region=北京 |
key | 是 | 开发**(Key) | key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77 |
output | 否 | 返回格式:支持JSON/JSONP,默认JSON | output=json |
callback | 否 | JSONP方式回调函数 | callback=function1 |
响应结果
名称 | 类型 | 必填 | 说明 | ||
---|---|---|---|---|---|
status | number | 是 | 状态码,0为正常 310请求参数信息有误 311Key格式错误 306请求有护持信息请检查字符串 110请求来源未被授权 |
||
message | string | 是 | 状态说明 | ||
result | object | 是 | 地址解析结果 | ||
location | string | 是 | 解析到的坐标 | ||
lat | number | 是 | 纬度 | ||
lng | number | 是 | 经度 | ||
address_components | object | 是 | 解析后的地址部件 | ||
province | string | 是 | 省 | ||
city | string | 是 | 市 | ||
district | string | 是 | 区,可能为空字串 | ||
street | string | 是 | 街道,可能为空字串 | ||
street_number | string | 是 | 门牌,可能为空字串 | ||
ad_info | object | 是 | 行政区划信息 | ||
adcode | 行政区划代码 | ||||
similarity | number | 是 | 即将下线,由reliability代替 | ||
deviation | number | 是 | 即将下线,由level代替 | ||
reliability | number | 是 | 可信度参考:值范围 1 <低可信> - 10 <高可信> 我们根据用户输入地址的准确程度,在解析过程中,将解析结果的可信度(质量),由低到高,分为1 - 10级,该值>=7时,解析结果较为准确,<7时,会存各类不可靠因素,开发者可根据自己的实际使用场景,对于解析质量的实际要求,进行参考。 |
||
level | number | 否 | 解析精度级别,分为11个级别,一般>=9即可采用(定位到点,精度较高) 也可根据实际业务需求自行调整,完整取值表见下文。 |