扣子集成高德API:周边商户精准查询实战指南

2026-06-22阅读 0热度 0
高德地图

在扣子中实现用户输入地点名称、自动解析坐标、精准搜索周边商户的完整闭环,关键在于绕过原生插件自带的模糊匹配缺陷——直接对接高德地图Web服务API,并对请求参数与地理编码链路进行精细控制。下面逐一拆解核心判断与操作步骤。

获取高德地图Web服务API Key

登录高德开放平台控制台,使用手机号完成注册并实名认证。创建新应用后,在“应用管理”中勾选“Web服务API”类型,提交审核。审核通过后复制生成的Key备用。

特别提醒:务必选择“Web服务API”类型,而非“JavaScript API”或“iOS/Android SDK”。选错将导致后续所有请求返回status=10008(非法key),导致流程卡死在第一步。

配置扣子HTTP请求插件

进入Bot编辑页面,点击左侧“插件”一栏,右上角“+添加插件”,选择“HTTP请求”,然后填写以下配置项:

• 请求URL:https://restapi.amap.com/v3/geocode/geo?address={address}&city=全国&key={your_key}
• 请求方法:GET
• 参数映射:将用户输入的原始地址绑定到{address},将上一步获取的Key粘贴至{your_key},city参数固定为“全国”,以避免因城市识别偏差遗漏跨市POI。

此步骤操作直观,只需将变量名填入URL模板,无需额外编写代码。

构建地理编码→周边搜索双链路

第一步:调用地理编码接口获取经纬度

• 在HTTP插件中设置响应体提取规则:json:geocodes[0].location
• 输出结果示例:116.481028,39.989643(经度在前,纬度在后,逗号为英文半角)

第二步:使用该坐标发起周边搜索请求

• 新增第二个HTTP插件,URL填写:https://restapi.amap.com/v3/place/around?location={location}&radius=500&keywords={keywords}&types={typecode}&offset=20&key={your_key}
• 关键参数说明:
– radius设为500(米),避免返回过多低相关结果;
– keywords留空,仅靠types精准过滤类别;
– types必须填写高德最新分类码(如餐饮填050000,咖啡馆填050101),不能使用汉字;
– offset=20确保单次最多拉取20条,防止超时失败。

一个容易被忽略的陷阱:若types填入汉字(例如“咖啡馆”),高德API会静默忽略该参数,返回全量POI,导致结果严重偏离预期。

结构化输出商户信息

第一种方法:用JSONPath提取关键字段

• 在第二个HTTP插件的“响应体提取”中依次配置:
– 名称:json:pois[0].name
– 地址:json:pois[0].address
– 距离:json:pois[0].distance
– 电话:json:pois[0].tel

第二种方法:启用“循环遍历”模式批量处理

• 开启插件高级设置中的“循环遍历”,路径填写json:pois
• 每个循环项内分别提取name、address、distance;
• 系统自动拼接成带编号的列表,无需手动编写for循环。

完成此步后,Bot即可将原始JSON中杂乱的20条数据转换为清晰可读的结构化卡片。

如何通过扣子调用高德地图API实现周边商户精准查询

免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策