返回顶部
m

mapbox-search-integrationMapbox搜索集成

Complete workflow for implementing Mapbox search in applications - from discovery questions to production-ready integration with best practices

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
84
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

mapbox-search-integration

Mapbox 搜索集成技能

在应用程序中实现 Mapbox 搜索功能的专家指导。涵盖从提出正确的发现性问题、选择适当的搜索产品,到按照 Mapbox 搜索团队的最佳实践实现生产级集成的完整工作流程。

何时使用此技能

当用户说出类似以下内容时:

  • - 我需要在地图上添加搜索功能
  • 我需要为我的地图应用添加搜索栏
  • 如何实现位置搜索?
  • 我希望用户能够搜索地点/地址
  • 我需要在应用程序中实现地理编码

此技能与 mapbox-search-patterns 互补:

  • - mapbox-search-patterns = 工具和参数选择
  • mapbox-search-integration = 完整的实现工作流程

发现阶段:提出正确的问题

在开始编码之前,提出以下问题以了解需求:

问题 1:用户要搜索什么?

提问:您希望用户搜索什么?

常见答案及其含义:

  • - 地址使用 Search Box API(交互式地址搜索的默认选项,包括地理编码)。仅当用例是批量/服务器端地理编码或维护旧版集成时才使用 Geocoding API。
  • 兴趣点/商家 → POI 搜索,使用带有分类搜索功能的 Search Box API
  • 地址和 POI 两者 → Search Box API
  • 特定类型的 POI(餐厅、酒店等)→ Search Box API
  • 国家、城市、邮政编码或社区 → 交互式搜索使用 Search Box API;仅批量/服务器端地理编码使用 Geocoding API
  • 自定义位置(用户创建的地点)→ 可能需要自定义数据 + 搜索集成

如果最初未说明,可跟进提问:您的用户是否在搜索兴趣点数据?餐厅、商店、商家类别?

含义:

  • - 是的,包含 POI → 使用 Search Box API
  • 不,用户不需要 POI 搜索仍然默认使用 Search Box API 用于交互式/自动补全用例。Search Box API 处理地址、地名和所有位置类型,采用基于会话的定价。仅当需要批量地理编码、服务器端永久地理编码或维护现有 Geocoding API 集成时才推荐使用 Geocoding API。

问题 2:地理范围是什么?

提问:用户将在哪里进行搜索?

常见答案及其含义:

  • - 单一国家(例如,仅限美国)→ 使用 country 参数,结果更佳,成本更低
  • 特定区域 → 使用 bbox 参数进行边界框约束
  • 全球范围 → 无国家限制,但可能需要语言参数
  • 多个特定国家 → 使用 country 数组参数

跟进提问:您是否需要将结果限制在特定区域?(配送区域、服务区域等)

问题 3:搜索交互模式是什么?

提问:用户将如何与搜索进行交互?

常见答案及其含义:

  • - 即输即搜/自动补全使用 Search Box API,设置 auto_complete: true,采用基于会话的定价(对自动补全最具成本效益)。实现防抖处理。
  • 搜索按钮/最终查询 → 可使用任一 API,无需自动补全
  • 两者兼顾(自动补全 + 细化)→ 两阶段搜索,先自动补全再显示详细结果
  • 语音输入 → 考虑语音转文本集成,处理较长查询

问题 4:使用什么平台?

提问:这是为哪个平台开发的?

常见答案及其含义:

  • - Web 应用程序 → Mapbox Search JS(最简单),或针对高级用例的直接 API 调用
  • iOS 应用 → iOS 版 Search SDK(推荐),或针对高级用例的直接 API 集成
  • Android 应用 → Android 版 Search SDK(推荐),或针对高级用例的直接 API 集成
  • 多平台 → 平台特定 SDK(推荐),或为保持一致性采用直接 API 方式
  • React 应用 → Mapbox Search JS React(带 UI 最简单),或 Search JS Core 用于自定义 UI。避免直接 API 调用——它们需要手动防抖、会话令牌管理和竞态条件处理。
  • Vue / Angular / 其他框架 → Mapbox Search JS Core 或 Web。如果使用直接 API 调用,则需要会话令牌以进行正确计费(每个搜索会话一个令牌,在每个建议/检索请求中作为 session_token 传递)。

问题 5:结果将如何使用?

提问:当用户选择结果时会发生什么?

常见答案及其含义:

  • - 飞至地图上的位置 → 需要坐标、地图集成
  • 显示详情/信息 → 需要检索并显示结果属性
  • 填充表单字段 → 需要解析地址组件
  • 开始导航 → 需要坐标,与导航集成
  • 多选 → 需要处理选择状态,可能显示标记

问题 6:预期使用量?

提问:您预计每月有多少次搜索?

含义:

  • - 低量(< 1万)→ 免费套餐足够,实现简单
  • 中量(1万-10万)→ 考虑缓存,优化 API 调用
  • 高量(> 10万)→ 实现防抖、缓存、批量操作,监控成本

产品选择决策树

根据发现阶段的答案,推荐合适的产品:

关键原则:Search Box API 是几乎所有交互式搜索用例的默认选择,包括地址搜索、地理编码、自动补全和 POI 搜索。它采用基于会话的定价,对交互式/自动补全流程更具成本效益。仅在下文列出的狭窄情况下推荐使用 Geocoding API。

Search Box API(默认)

在以下情况使用(满足任一条件):

  • - 用户需要交互式地址搜索或自动补全(这本身就是地理编码——Search Box API 可以处理)
  • 用户需要 POI / 分类搜索
  • 用户需要任何面向最终用户的搜索 UI
  • 用户希望采用基于会话的定价(对自动补全/交互式使用更具成本效益)
  • 用户正在构建带有搜索栏的 Web、iOS 或 Android 应用

对于 Web 集成,优先使用 SDK 而非直接 API 调用:

  • - Mapbox Search JS(SDK)- 推荐用于 Web 集成,包含三个组件:
- Search JS React - 通过 React 库轻松集成搜索,带 UI - Search JS Web - 通过 Web Components 轻松集成搜索,带 UI - Search JS Core - API 的 JavaScript(Node 或 Web)封装,可构建自定义 UI
  • - Search Box API(REST)- 直接 API 集成,适用于高级/自定义用例
  • iOS 版 Search SDK - 原生 iOS 集成
  • Android 版 Search SDK - 原生 Android 集成

Geocoding API(专用)

仅当以下情况使用:

  • - 批量地理编码大量地址列表(服务器端)
  • 永久/存储地理编码结果(服务器端,结果需要持久化)
  • 维护现有的 Geocoding API 集成(迁移成本不合理)
  • 不需要交互式/面向用户的搜索

在以下情况不要推荐 Geocoding API:

  • - 用户需要搜索栏、自动补全或交互式地址查找——改用 Search Box API
  • 用户提到地理编码但描述的是交互式搜索流程——改用 Search Box API

参考文件

根据用户的平台和需求加载相关参考文件:

  • - Web(Search JS React / Web / Core / 直接 API) → 加载 references/web-search-js.md
- 适用场景:用户正在构建 Web 应用(原生 JS,除 React 特定模式外的任何框架)
  • - React 集成 → 加载 references/react-search.md
- 适用场景:用户专门构建 React 应用
  • - iOS → 加载 references/ios-search.md
- 适用场景:用户正在构建 iOS 应用(Swift/UIKit/SwiftUI)
  • - Android → 加载 references/android-search.md
- 适用场景:用户正在构建 Android 应用(Kotlin/Java)
  • - Node.js → 加载 references/nodejs-search.md
- 适用场景:用户需要服务器端搜索(Express、无服务器、后端 API)
  • - 最佳实践 → 加载 references/best-practices.md
- 适用场景:首次实现搜索,或优化现有实现 - 涵盖:防抖、会话令牌、地理过滤、错误处理、可访问性、缓存、令牌安全
  • - 常见陷阱 → 加载 references/pitfalls.md
- 适用场景:调试问题、审查代码或进行

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 mapbox-search-integration-1775921224 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 mapbox-search-integration-1775921224 技能

通过命令行安装

skillhub install mapbox-search-integration-1775921224

下载

⬇ 下载 mapbox-search-integration v1.0.0(免费)

文件大小: 23.01 KB | 发布时间: 2026-4-12 10:30

v1.0.0 最新 2026-4-12 10:30
- Initial release providing a complete workflow for integrating Mapbox search in applications.
- Includes structured discovery questions to determine the best Mapbox search solution for each use case.
- Recommends session-based Search Box API as the default for interactive search, with clear decision points for Geocoding API.
- Outlines best practices and product selection guidance for web, React, iOS, and Android platforms.
- Details reference documentation to load based on the user's platform and requirements.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部