前端使用腾讯位置WebService API

  项目计划使用这个做一款在线点单之类的产品,让我们提前先看一下,一开始看到是服务端api的时候有点蒙,感觉这东西前端调用不会报错么,果不其然,他来了,前端常客跨域问题,翻看了很多博客寻求解决方案,讲的大同小异,原来前端调用这种需要借助jsonp,然后戛然而止,并没有看到实际解决方案,jsonp到底是什么也还是待日后仔细钻研,在这里先贴上解决方案吧。

function getMessage() {
  $.ajax({
    type: "get",
    url:"https://apis.map.qq.com/ws/place/v1/search",
    data:{
      "keyword":"%e9%85%92%e5%ba%97",
      "boundary":"region(%e5%8c%97%e4%ba%ac,0)",
      "key":"OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77",
      "output":"jsonp",
      "callback":"?"
    },
    dataType: "jsonp",
    success: (res) => {
      //返回搜索结果
      console.log(res);
    },
  });
}    

这是一个完整的api调用,其中

"key":"OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77",//  key是官网实例的,替换成自己的即可
"output":"jsonp",//  解决CORB问题
dataType: "jsonp",//  解决CORS跨域问题

以上,即可在前端顺利拿到回参!希望能对大家有帮助。

---------2020/09/17第二次编辑

项目需求,多端使用,所以用uni-app开发,居然不支持jsonp,无法实现跨域,待解决!

posted @ 2020-09-11 09:59  倏尔南风至  阅读(522)  评论(0)    收藏  举报