【百度地图API】当地址解析失败时,如何调用search方法查找地址

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 原文:【百度地图API】当地址解析失败时,如何调用search方法查找地址有个朋友问我,当地址解析失败时,应该如何处理呢?比如,他想搜索“南宁市青秀区”。 ----------------------------------------------------------------------------- 首先,我们需要弄明白,地址解析的原理: 使用Geocoder进行地址解析,比如“北京市海淀区上地10街”,当系统匹配到这个地址时,getPoint就会返回一个坐标点。
原文: 【百度地图API】当地址解析失败时,如何调用search方法查找地址

有个朋友问我,当地址解析失败时,应该如何处理呢?比如,他想搜索“南宁市青秀区”。

-----------------------------------------------------------------------------

首先,我们需要弄明白,地址解析的原理

使用Geocoder进行地址解析,比如“北京市海淀区上地10街”,当系统匹配到这个地址时,getPoint就会返回一个坐标点。
这里需要用到回调函数。
var myGeo = new BMap.Geocoder(); // 将地址解析结果显示在地图上,并调整地图视野
myGeo.getPoint( " 北京市海淀区上地10街 " , function (point){
if (point) {
map.centerAndZoom(point,
16 );
map.addOverlay(
new BMap.Marker(point));
}},
" 北京市 " ); 

当系统无法匹配“北京市海淀区上地10街”的时候,会返回“北京市海淀区”的几何中心点。
如果还是无法匹配,会返回“北京市”的几何中心点。

如果你只是想返回“北京市”的坐标,或者说想要模糊查询,建议不要使用地址解析。
而是使用LocalSearch类的search方法。例子详见:
http:
// www.cnblogs.com/milkmap/archive/2010/12/22/1914106.html

当地址解析失败时,你可以调用localsearch函数。这个方法被称之为模糊查询

在以下的例子里,为了方便快捷,我取了第一个查询结果。

这样,当地址解析“南宁市青秀区”失败时,会自动search这个地址,并打点在地图上。

img_65b3071d4832c7c2e2685a6cc9f3d8d2.jpg

完整源代码:

<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
< html >
< head >
< title > 地址解析失败时搜索 </ title >
< meta name ="Generator" content ="EditPlus" >
< meta name ="Author" content ="" >
< meta name ="Keywords" content ="" >
< meta name ="Description" content ="" >
< script type ="text/javascript" src ="http://api.map.baidu.com/api?v=1.2" ></ script >
</ head >

< body >
< div id ="divMap" style ="width:400px;height:400px;border:solid 1px gray" ></ div >
< script type ="text/javascript" >
var map = new BMap.Map( " divMap " );
map.centerAndZoom(
new BMap.Point( 108.532769 , 22.825487 ), 12 ); // 这里是定义到了南宁市
var gc = new BMap.Geocoder();
gc.getPoint(
" 南宁市青秀区 " , function (pt){
if (pt){
map.addOverlay(
new BMap.Marker(pt)); // 如果地址解析成功,则添加红色marker
} else {
var ls = new BMap.LocalSearch( " 南宁市 " );
ls.search(
" 南宁市青秀区 " );
ls.setSearchCompleteCallback(
function (rs){
if (ls.getStatus() == BMAP_STATUS_SUCCESS){
var poi = rs.getPoi( 0 ); // 取第1个查询结果
if (poi){
var pt2 = poi.point;
map.addOverlay(
new BMap.Marker(pt2)); // 如果查询到,则添加红色marker
}
}
else {
alert(
" fail " );
}
});
}
},
" 南宁市 " );
</ script >
</ body >
</ html >
目录
打赏
0
0
0
0
216
分享
相关文章
PP-DocBee:百度飞桨多模态文档解析神器,中文场景SOTA准确率一键提取表格图表
PP-DocBee 是百度飞桨推出的专注于文档图像理解的多模态大模型,基于 ViT+MLP+LLM 架构,具备强大的中文文档解析能力,适用于文档问答、复杂文档解析等场景,支持多种部署方式。
170 1
地址描述转换为坐标点不使用API,有什么转换的方法?
地址描述转换为坐标点不使用API,有什么转换的方法?
472 64
|
6月前
|
API
天气预报15日-墨迹天气-地址查询版免费API接口教程
该接口提供15日天气预报服务,通过指定地址获取墨迹天气预报。支持POST或GET请求,需提供用户ID、KEY、省份名称及地点等参数。返回数据包括15天内每天的天气详情,如最高最低温度、天气变化及图标等。示例中使用的ID和KEY为公共测试账号,建议使用个人账号以获得更高调用频率。
|
6月前
|
API
获取网页重定向地址免费API接口教程
该API用于获取网页重定向跳转后的最终地址。请求地址为`https://cn.apihz.cn/api/wangzhan/tiaozhuan.php`,支持POST或GET方式。请求参数包括`id`、`key`和`url`,返回数据包含状态码`code`和最终URL`url`。示例返回:`{&quot;code&quot;:200,&quot;url&quot;:&quot;https://www.baidu.com/&quot;}`。
152 29
|
6月前
|
API
天气预报1天-中国气象局-地址查询版免费API接口教程
此接口提供中国气象局官方的当日天气信息,支持POST和GET请求,需提供用户ID、KEY、省份及具体地点。返回数据包括状态码、消息、天气详情等。示例中使用的ID与KEY为公共测试用,建议使用个人ID与KEY以享受更高调用频次。
1410 9
|
6月前
|
API
天气预报-腾讯天气-7天-地址查询版免费API接口
这是一个免费的腾讯天气API接口,用于查询指定地址的7天天气预报。支持POST和GET请求方式。请求参数包括id、key、province、city、county等。返回参数包含日期、天气状况、温度等信息。 示例请求地址:https://cn.apihz.cn/api/tianqi/tengxun.php?id=88888888&key=88888888&province=四川省&city=绵阳市&county=。
用于企业AI搜索的Bocha Web Search API,给LLM提供联网搜索能力和长文本上下文
博查Web Search API是由博查提供的企业级互联网网页搜索API接口,允许开发者通过编程访问博查搜索引擎的搜索结果和相关信息,实现在应用程序或网站中集成搜索功能。该API支持近亿级网页内容搜索,适用于各类AI应用、RAG应用和AI Agent智能体的开发,解决数据安全、价格高昂和内容合规等问题。通过注册博查开发者账户、获取API KEY并调用API,开发者可以轻松集成搜索功能。
Python--API编程:IP地址翻译成实际的物理地址
Python--API编程:IP地址翻译成实际的物理地址
138 0
国内可用的 Web Search API,可以平替Bing Search API
近期人们发现,AI对搜索引擎的需求远远超过人类。这个团队专为AI打造搜索引擎,上线仅60天就已被调用超30万次。
国内可用的 Web Search API,可以平替Bing Search API
SharePoint Search REST API 获取数据
【7月更文挑战第6天】使用SharePoint Search REST API进行搜索涉及发送AJAX请求到`/_api/search/query`,其中`querytext`包含搜索关键词,`sourceid`指定结果源ID。示例代码展示了使用jQuery的`.ajax()`方法,成功后通过`success`回调处理返回的搜索结果数据。记得替换URL占位符并确保有相应权限。返回数据的结构可能因配置而异,可能需要进一步解析。还要考虑身份验证、分页和其他查询参数。查阅官方文档可了解更多复杂操作和API使用。
110 4

推荐镜像

更多