海外地址解析简单攻略
发布于 3 年前 作者 ifeng 3055 次浏览 来自 分享

海外地址解析有多种方案:

1、腾讯地图海外地址解析;

2、HERE地图解析;

3、Google地图解析(被墙,放弃)

以下重点介绍第1、第2种地址解析方案。

方案一:腾讯地图海外地址解析

步骤如下:

1、lbs.qq.com登录自己的账户;

2、控制台–工单–创建工单

3、选择:特色产品–海外位置服务

4、认真填写工单信息;

5、等待回复

6、腾讯工作人员回信,内容为:

七天的测试期,可以尽情测试你的代码接口了;

如果需要申请正式服务,最低配套餐为3万CNY,(我们嫌贵,果断放弃)

7、云函数实现地址解析的简单代码如下:

const rp = require('request-promise')
exports.main = async (event) => {
  let opt = {
    uri: 'https://apis.map.qq.com/ws/geocoder/v1',
    qs: {
      address: event.address,
      oversea: 1,
      language: 'en',
      // country: "Australia",
      key: 'HCDBZ-OHMA3-IMQ3R-*****-EW366-YNBVU'
    },
    json: true
  }
  return await rp(opt)
}

代码简单吧?哈,就是这么简单,果然,返回了某地址event.address的正确信息,包含GPS坐标;

我们猜测腾讯海外位置服务可能调用的是HERE接口,立马转向HERE本尊,直接连HERE地址解析接口。

方案二:HERE地址解析

1、打开官网here.com

2、点击Delevoper

3、注册开发者账号,登录;

4、右上角头像–Projects

5、Projects里应该此时只有一个免费Freemium套餐,免费的,真香;点击进入;另外还有两个套餐可选,价格能接受。

6、在REST里Create APP创建一个应用,并创建一个API key;

7、这样就可以使用HERE的接口了,云函数里访问HERE的代码如下:

const rp = require('request-promise')
exports.main = async (event) => {
  if (event.address) { } else return 'wrong address'
  let opt = {
    uri: 'https://geocode.search.hereapi.com/v1/geocode',
    qs: {
      q: event.address,
      apiKey: 'x656fsEiUvnz************0MrcC4COBA8SVk'
    },
    json: true
  }
  return await rp(opt)
}

哈,是不是更简单?没错,就这几行代码就全部搞定通过地址信息查询地图坐标的功能了。

到此,海外地址功能搞定,其他HERE接口,照此编写代码即可。

1 回复

你好,这边已经申请到了海外地图的权限,后端也已经将海外坐标系转为国内的火星坐标系,然后使用微信小程序自带的地图组件插件,传入经纬度,显示地图页面是空白的;而国内则是正常的

请外小程序端海外经纬度获取到后,页面的空白显示怎么解决?

回到顶部