用户在搜索框输入地点的关键词,即可呈现相应的地点提示文字,将最佳的可能搜索结果以下拉列表的方式呈现给用户,提升了用户的地图搜索体验和地点查找效率。
效果如下:

一、功能介绍

关键词输入提示接口可以用于获取输入关键字的补完与提示,帮助用户快速输入。可以通过配合前端程序实现Autocomplete(自动完成)的效果。

二、密钥申请

1. 用户登录

打开腾讯位置服务主页:https://lbs.qq.com,点击右上角的登录按钮:

2. 验证信息

点击控制台,进入开发者信息界面,补全基本用户信息,完成验证。

3. 申请密钥

点击左侧key与配额下的key管理:
点击创建新密钥,填写Key名称、描述、验证码,等待审核通过:
密钥申请通过后,可以点击设置按钮修改名称及描述,并可以选择启用的产品,以及对调用规则进行限制:
同时,可以在查看配额界面查看各接口的用量情况:

三、操作步骤

1. 开发文档入口

滑动到上方菜单的开发文档 -> 选择服务端下的WebService API:
点击左侧的关键词输入提示:
直达地址:https://lbs.qq.com/service/webService/webServiceGuide/webServiceSuggestion

2. 接口测试

可以直接使用Postman工具来测试,或者使用Postwomen(Postman他女朋友,唉,连工具都成双入对了,写个代码都要被虐,罢了,好好打工)。
由文档可知,接口的请求类型为GET,默认的数据返回格式为JSON。必填参数有三个:

  • key:开发者密钥
  • keyword:搜索关键字
  • region:搜索范围,必填的限制条件(可以通过region_fix来设置是否扩大范围)

3. 返回结果

以下为返回结果,为了完整展示数据结构,删减了data中的部分数据:

{"status": 0,"message": "query ok","count": 100,"data": [{"id": "14178584199053362783","title": "中关村","address": "北京市海淀区","category": "地名地址:热点区域:商圈类","type": 0,"location": {"lat": 39.981047,"lng": 116.320787},"adcode": 110108,"province": "北京市","city": "北京市","district": "海淀区"},{"id": "2199027905900","title": "中关村[地铁站]","address": "地铁4号线大兴线","category": "基础设施:交通设施:地铁站","type": 2,"location": {"lat": 39.984055,"lng": 116.316478},"adcode": 110108,"province": "北京市","city": "北京市","district": "海淀区"}],"request_id": "1136352410315519097"
}

字段含义可见下表(可在接口文档中找到):
四、使用案例
由于接口为纯HTTP接口,所以在效果实现上还需要使用项目中的一些组件。本例使用最简的jquery-ui来实现autocomplete效果,下载地址为:http://jqueryui.com/download/。

1. 基础界面

首先构建一个基础界面,创建一个文本框,并依照jquery-ui的用法进行绑定。

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><!--引入css样式文件--><link rel="stylesheet" type="text/css" href="css/jquery-ui.min.css"/><!--引入所需的jquery库文件--><script src="js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8"></script><!--引入jquery-ui文件--><script src="js/jquery-ui.min.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function() {$("#search").autocomplete({//为文本框完成绑定source: function(request,response){//使用自定义函数处理}});});</script></head><body><div class="ui-widget"><label for="search">搜索框: </label><input type="text" id="search"></div></body>
</html>

效果如下:

2. 动态响应

在source对应的函数中需要完成接收文本框的值,以及向接口请求数据,最终进行数据封装的过程。需要注意,由于该过程涉及到用户的不断操作,所以建议将ajax设置为同步方式。

                $("#search").autocomplete({//为文本框完成绑定source: function(request,response){//从request对象中获得文本框内容var keyword = request.term;//定义数组,封装最终结果var obj = [];$.ajax({url:"https://apis.map.qq.com/ws/place/v1/suggestion",type:"get",dataType:"json",async:false,//关闭异步data:{"key":"替换为自己的key","keyword":keyword,"region":"北京"},success:function(resp){for(i in resp.data){//此处可以根据需要自定义要显示的内容以及封装的数据obj.push({"label":resp.data[i].title + "["+resp.data[i].province+"-"+resp.data[i].city+"-"+resp.data[i].district+"]","value":resp.data[i].title});//label为提示显示的内容//value为选中后补全出现在文本框中的内容}}});//将obj最为结果返回response(obj);}});

测试可知,支持中文与拼音的检索,最终效果如下:

  • 拼音搜索
  • 选中后
    此处功能需要的效果可以根据项目的需要进行调整。

3. 完整案例源码

  • 腾讯位置服务案例

原文作者:一头小山猪

地图使用:地点关键词的输入提示相关推荐

  1. Android高德地图的使用,狠详细!手把手!(地图+定位+逆地理编码+输入提示+Poi搜索)

    最近项目用到高德地图,因此来写一篇文章理一下高德的使用步骤方法,希望对大家有用! ##1.注册+配置 废话不多说,要使用高德地图首先要去高德开放平台注册成为开发者(http://lbs.amap.co ...

  2. Vue 高德地图 输入提示和POI搜索插件结合使用 拾取对应地点坐标

    1.准备好高德地图的key和安全密钥jscode,key的平台类型是Web 端 ( JSAPI ). 2.注意:自2021年12月02日升级,升级之后所申请的 key 必须配备安全密钥 jscode  ...

  3. 腾讯地图 - 关键词输入提示(结尾附视频)

    一.功能介绍 关键词输入提示接口可以用于获取输入关键字的补完与提示,帮助用户快速输入.可以通过配合前端程序实现Autocomplete(自动完成)的效果. 二.密钥申请 1. 用户登录 打开腾讯位置服 ...

  4. Android studio百度地图SDK开发 2020最新超详细的Android 百度地图开发讲解(6) POI检索, 根据地址输入提示检索 Sug

    POI检索, 根据地址输入提示检索 Sug 参考百度地图官方文档:http://lbsyun.baidu.com/index.php?title=androidsdk/guide/search/sug ...

  5. 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

    原文地址为: [高德地图API]从零开始学高德JS API(四)搜索服务--POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址 ...

  6. 高德地图web 输入提示+地图选点

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  7. 百度地图-地理位置输入提示

    百度地图-地理位置输入提示 在做一些地点检索或者行程推荐的系统时,往往需要用户对地址信息进行输入,此时如果有智能化的输入提示根据用户的输入而进行相关的地理位置名称推送就会大大提示系统的使用流畅性.但如 ...

  8. 腾讯位置 - 关键词输入提示(结尾附视频)

    写在前面:博主是一只经过实战开发历练后投身培训事业的"小山猪",昵称取自动画片<狮子王>中的"彭彭",总是以乐观.积极的心态对待周边的事物.本人的技 ...

  9. 用腾讯地图实现地点搜索

    简介 腾讯位置服务为微信小程序提供了基础的标点能力.线和圆的绘制接口等地图组件和位置展示.地图选点等地图API位置服务能力支持,使得开发者可以自由地实现自己的微信小程序产品. 在此基础上,腾讯位置服务 ...

最新文章

  1. Android Stdio 里的 SQLite数据库 刷新和保存
  2. 【Spring学习】使用Spring的jdbcTemplate简化JDBC操作
  3. arguments.callee()事例 参数检验
  4. 【渝粤题库】国家开放大学2021春1018国际公法题目
  5. c语言 异或_编程入门:C语言基础知识全网超全不用到处找了!(文末附清单)
  6. 原 CSS3中的过渡,css3之过渡
  7. linux有许多sed进程,Linux进程与性能监控
  8. connection error mysql_MySQL ConnectionError 安装错误 解决方法
  9. NP、OSPF路由聚合
  10. 微软 虚拟学院 官方 Introduction to Microsoft Dynamics CRM 2013 视频学习地址分享
  11. 黑马程序员__java基础视频day7
  12. 联想笔记本重装系统,联想电脑安装系统
  13. 企业公众号如何申请开通模板消息功能?
  14. 吴彩强:从表征到行动---意向性的自然主义进路
  15. SecureCRT出现Password authentication failed,也可能是用户名错误
  16. linux ping不通自动关机脚本,服务器断电自动关机bat脚本
  17. 影像组学|影像组学导论
  18. 行为识别基础模型总结
  19. P不能做div的父元素?
  20. 为应用程序添加图标 ios_为已添加书签的网站添加iOS图标

热门文章

  1. java浮点定义关键词_Java关键词和每个用法的解释大全
  2. 3.Emment语法
  3. 美剧字幕组翻译谈如何提高英语听力口语
  4. selenium---勾选框处理
  5. 微分中值定理之罗尔定理
  6. 第十一届蓝桥杯JavaA省赛填空题
  7. 45个激发灵感的平面网页设计
  8. 锤子科技官方首页的特效
  9. 人为什么要使用计算机,人们为什么把计算机叫做电脑?
  10. [pyecharts学习笔记]——WordCloud词云图