迁移

迁出 HERE autosuggest 集成

HERE 的 autosuggest 端点在用户输入时返回地址和地点建议,结构为一个 items 数组,其中每一项都带有一个 title、一个表明该建议是完整地址、地点还是类别的 resultType,并且通常还有一个标出哪些字符与输入匹配的高亮对象。这种混合的结果类型,即地址、地点和类别同时出现在一个响应中,是 HERE 做法中较为独特的部分之一,在假定其他服务商的自动补全完全相同之前,值得仔细梳理。

autosuggest 集成通常与某个特定的前端组件(一个带下拉列表的地址输入框)紧密相连,而交互细节(建议出现得有多快、高亮如何呈现、用户忽略建议继续输入时会发生什么)对最终用户来说往往比任何后端实现细节都更重要。这使得迁移一半是后端任务,一半是用户体验审查。

My Geocode 提供地址自动补全,文档见 /docs/address-autocomplete/,有其自己的请求和响应格式。由于结果混合和排序行为确实取决于每家服务商的具体实现,值得用来自您自己用户群的代表性查询直接测试这个端点,而不要假定 HERE 的混合类型结果结构会原样沿用。不同服务商对什么算地址建议、什么算地点的界定各不相同。

对于这类迁移通常行之有效的步骤:

  • 列出您的前端代码当前据以分支的具体 resultType 值,因为这部分分支逻辑最有可能需要调整
  • 检查您的界面当前呈现的高亮或匹配子串行为,并确认新端点是否提供等效功能,还是这个界面细节需要重新设计
  • 用日志中真实的历史查询样本(而不是合成的测试地址)测试新端点,因为真实用户的输入习惯(拼写错误、不完整的词、缩写)会暴露干净的测试数据发现不了的排序差异

身份验证使用密钥,可通过 X-API-KeyAuthorization: Bearer、HTTP Basic 认证或查询参数发送。价格为:不用密钥每天免费 2,500 次请求,每个密钥每天另有 2,500 次免费请求,按网络计算,之后按每次请求 €0.0001 使用预付额度,或使用每月 €50 的 Unlimited 密钥,平台上所有端点费率相同。

由于几乎每次按键都可能触发请求,autosuggest 的触发频率相对于典型的地理编码调用要高得多,因此值得在全面上线之前根据每日免费配额和每次请求的费率估算用量,而不是等到上线后才发现真实的使用模式。