百度地图

来自百合仙子's Wiki
跳转到导航 跳转到搜索

坐标转换

百度地图使用自己的坐标系统,但有提供非公开的 API 用于转换[1]

http://api.map.baidu.com/ag/coord/convert?from=0&to=2&x={longitude}&y={latitude}

其中:

from
来源坐标系( 0 表示 WGS-84 坐标; 2 表示 GCJ-02 坐标,即 iOS 地图 / Google Maps / 高德地图使用的; 4 表示 BD-09 坐标,即百度地图使用的)
to
转换后的坐标系
x
base64 编码的经度
y
base64 编码的纬度

已知支持的转换为:

  • 从 WGS-84 到 GCJ-02
  • 从 WGS-84 到百度地图

返回的结果是一个 JavaScript 对象字符串[2],例如:

{"error":0,"x":"MTIxLjUwMDIyODIxNDk2","y":"MzEuMjM1ODUwMjYwMTE3"}

问题

  • 百度静态地图[3]不会缓存,始终返回 200 状态(2013年6月5日)

参考资料

  1. WGS84坐标转火星坐标(iOS篇)
  2. 是合法的 JSON,但是其 Content-Typetext/javascript 而非 application/json
  3. 静态图 API