融合定位

综合多种信号实现高精度定位

POST/api/service/location

接口说明

融合定位接口综合利用基站、Wi-Fi 热点列表进行推测定位,在 GPS 信号不好的环境中(如室内)仍能提供高精度定位结果。 融合定位依赖参考点(基站/Wi-Fi 热点)的信号特征进行位置推算:参考点越多,定位基准越丰富,有助于提升推算精度;但信号环境复杂多变(如热点迁移、信号衰减等),更多数据并不保证一定能成功定位,建议根据实际场景尽可能多地采集可用的信号数据。 Wi-Fi 热点的 MAC 地址和信号强度(dBm)属于无线 Beacon 广播帧中的公开信息,终端在未连接热点、未获取密码的情况下即可扫描获取,无需鉴权。

请求方式POST
支持地区中国大陆
坐标系GCJ02(火星坐标系)

认证方式

所有 API 请求均需通过 HTTP Authorization 请求头携带 Bearer Token 进行身份验证。 Token 可在控制台的「团队设置 → API 密钥」中创建和管理。

// 请求头示例
Authorization: Bearer <YOUR_API_KEY>

Token 属于密钥凭证,请勿提交到代码仓库或公开渠道。建议通过服务端代理调用 API,避免在前端直接暴露 Token。

请求参数

POST/api/service/location
参数名类型必填说明
frominteger必填返回坐标系:0=WGS84,1=BD09(BD09LL),3=GCJ02
timeinteger必填当前时间戳(毫秒)
assetstring必填设备唯一标识编号
cellularsarray可选基站列表,与 wifis 二选一
cellinteger必填小区识别码 Cell ID
primaryboolean可选是否主基站,多基站时设置
asuinteger可选信号强度,与 dbm 至少填写 1 个,示例:0、20、31
dbminteger可选信号功率,与 asu 至少填写 1 个,单位 dBm,示例:-113、-93、-73
countryinteger必填MCC 码,移动国家码
networkinteger必填MNC 码,CDMA 时为 SID(System ID)码
areainteger必填区域码,CDMA 时为 NID(Network ID),LTE 时为 TAC(Tracking Area Code),范围 0-65535
wifisarray可选Wi-Fi 热点列表,与 cellulars 二选一
macstring必填Wi-Fi 网卡 MAC 地址(Beacon 广播帧公开信息,无需连接或获取密码即可扫描获取)
signalinteger必填Wi-Fi 信号强度,单位 dBm(Beacon 广播帧公开信息,无需连接或获取密码即可扫描获取),示例:-113、-68

返回字段

成功响应result: 1HTTP 200
字段名类型说明
resultinteger成功标识,1 为成功
namestring地点名称
pointobject融合后坐标
lngnumber经度
latnumber纬度
addressobject地址信息
namestring完整地址字符串
contextobject行政区划信息
countryobject国家信息
provinceobject省份信息
cityobject城市信息
districtobject区县信息
townshipobject街道/乡镇信息

代码示例

请求示例
JavaScript
fetch('https://lts.maiyun.net/api/service/location', {
    method: 'POST',
    headers: {
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Type': 'application/json',
    },
    body: JSON.stringify({
        from: 3,
        time: 1768535120038,
        asset: 'byabc',
        cellulars: [
            {
                "cell": 132605532,
                "primary": false,
                "asu": 80,
                "dbm": -113,
                "country": 460,
                "network": 0,
                "area": 12321
            },
        ],
        wifis: [
            { mac: '9E:2B:A6:86:2A:0E', signal: -74 },
            { mac: '54:52:84:86:03:A8', signal: -79 },
            { mac: 'EE:60:73:AF:AD:0C', signal: -81 },
            { mac: '50:64:2B:94:A4:7F', signal: -87 },
            { mac: 'D8:15:0D:FE:5C:09', signal: -90 },
        ],
    }),
})
    .then(r => r.json())
    .then(data => {
        console.log(data.point);
    });
返回示例(成功)
JSON
{
    "result": 1,
    "name": "代码示例位置",
    "point": { "lng": 117.334369, "lat": 39.116094 },
    "address": {
        "name": "天津市东丽区万新街道平盈路8号服务8100室",
        "context": {
            "country": { "name": "中国", "code": "CN" },
            "province": { "name": "天津市", "code": "120000" },
            "city": { "name": "天津市", "code": "120100" },
            "district": { "name": "东丽区", "code": "120110" },
            "township": { "name": "万新街道", "code": "120110006" }
        }
    }
}

错误码

错误码描述
-1参数错误:cellulars 和 wifis 至少需要传入一项
-3信号数据不足,无法完成定位
-400未提供授权信息,请检查 Authorization 请求头
-401Token 不存在或已过期,请重新获取
-402关联的团队账号不存在
-429超出 QPS 限制,请适当降低请求频率后重试

当请求失败时,接口将返回对应的 result 值(≤ 0)及错误描述字符串。 其中 -400 及以下为通用鉴权错误,其余为当前接口特有错误。