首页 新闻动态 知识

地址转经纬度API怎么接入

发布时间:2026-08-06 22:13 点击:7722

地址转经纬度应调用正向转换入口,经纬度转文字地址则调用逆向入口;两种请求都要显式传入坐标类型,先检查业务 status,再读取 result。返回坐标仍需结合业务地址复核。

“地址转经纬度”和“经纬度转地址”看起来只是参数位置互换,实际上它们的输入、返回字段和页面用途不同。前者常用于地图标点、配送区域或门店坐标补全;后者常用于把设备、订单或地图点击位置转换为可读地址。将两条流程分开封装,后续更容易排查问题。

先确定要走正向还是逆向转换

极速数据(jisuapi)的经纬度地址转换 API 文档当前提供两个入口:

需求 接口地址 必填输入 当前文档列出的核心输出
地址转经纬度 https://api.jisuapi.com/geoconvert/addr2coord addresstype latlngaddresstype;部分字段随坐标类型不同而不同
经纬度转地址 https://api.jisuapi.com/geoconvert/coord2addr latlngtype address、国家、省、市、区县、地址描述等

两条接口都支持 GET 和 POST。文档把 type 列为必填,并说明当前可选 baidugoogle,同时写有默认 baidu。为了避免依赖默认值以及坐标体系混用,生产请求中应显式传入 type,并让下游地图展示与同一种坐标类型保持一致。

最小的地址转经纬度请求

前置条件是已在极速数据后台取得可用 APPKEY、确认应用有该接口权限,并安装 requests(可执行 python -m pip install requests)。下面的 Python 代码仅根据官方文档整理请求结构,使用环境变量保存密钥;代码没有实际执行请求,也不包含真实地址或 APPKEY。

import os
import requests

url = "https://api.jisuapi.com/geoconvert/addr2coord"
params = {
    "appkey": os.environ["JISUAPI_APPKEY"],
    "address": "待转换的业务地址",
    "type": "baidu",
}

try:
    response = requests.get(url, params=params, timeout=10)
    response.raise_for_status()
    payload = response.json()
except ValueError as exc:
    raise RuntimeError("接口响应不是有效 JSON") from exc
except requests.RequestException as exc:
    raise RuntimeError(f"地址转换请求失败:{exc}") from exc

if payload.get("status") != 0:
    raise RuntimeError(payload.get("msg", "地址转换失败"))

result = payload.get("result") or {}
latitude = result.get("lat")
longitude = result.get("lng")

if latitude is None or longitude is None:
    raise RuntimeError("业务成功,但响应中缺少经纬度字段")

这里有两个层次的成功条件:response.raise_for_status() 用于处理 HTTP 层的异常;payload["status"] == 0 用于判断官方示例中的业务成功状态。只有两层都通过后,才读取 result 中的经纬度。不要因为网络请求返回了 HTTP 响应,就直接认定坐标已经可用。

返回结果应怎样判断

地址转经纬度的文档列出 addresstypelatlng,并说明 fulladdress 是 Google 类型字段;preciseconfidencelevel 是 Baidu 类型字段。也就是说,前端和数据表设计不应假定所有类型都会返回同一组扩展字段。

如果业务需要“精确打点”提示,可以只在请求和结果均为 Baidu 类型、且该字段实际存在时处理 precise;不能把缺少这个字段解释成坐标错误。同样,地址文本本身的完整程度会影响结果表达,门店、楼栋、房间号等更细的业务核验应留在自有系统流程中完成。

常见错误的排查顺序

  1. 确认方向。 有地址就用 addr2coord;有经纬度就用 coord2addr。方向选反会导致参数不匹配。
  2. 检查必填参数和类型。 地址请求需要 addresstype;坐标请求需要 latlngtype。不要让前端在缺少任一参数时直接发送请求。
  3. 区分业务错误。 当前文档列出 201 经纬度为空、202 地址为空、203 经纬度不正确、210 没有信息。它们分别指向缺参、格式和数据结果问题,不应合并成一个笼统的“接口异常”。
  4. 再检查鉴权与限制。 系统错误码中包含 APPKEY 为空或不存在、过期、无权限、超过调用限制等情况,应记录 statusmsg 供服务端排查,但不要把 APPKEY 写进日志。

地理位置通常带有业务敏感性。将 APPKEY 保留在服务端环境变量中,避免把完整地址和查询 URL 长期写入公开前端日志;涉及用户住址、设备位置或配送信息时,还应按自身的数据授权和留存规则处理。

截至 2026-08-06,极速数据的经纬度地址转换 API 文档列出了正向、逆向两个入口及各自参数。上线前请在该页面复核当前权限、参数和错误码,并用不含个人信息的授权测试数据完成联调。