腾讯地图WebService API 和 CORB误会

腾讯地图WebService API 和 CORB的误会

最近业务开发中,涉及到了腾讯地图API 、 跨域 、 CORB。虽然最后的结果方法很简单,php

可是以为这个解决问题的过程,仍是值得记录一下的。json

业务内容以下:segmentfault

  • 1.我根据JS-SDK,配置好后端返回的签名、随机字符串、时间戳、appId,而后使用wx.getLocation拿到经纬度

(签名是根据这4个参数算出来 noncestr(随机字符串), 有效的jsapi_ticket, timestamp(时间戳), url)后端

  • 2.获取经纬度后,根据经纬度拿到当前所属省份。 这个须要腾讯地图的WebService API,就会这里遇到的问题...
  • 3.以后就是拿着省份,去请求后端的php接口,获取该省份对应的门店啦。

调用腾讯地图WebService API须要跨域api

这个很好理解。那么怎么作呢,无非是跨域

  • CORS。 由于是第三方API,无法设置header,因此pass
  • JSONP
  • 服务端代理

服务端代理,我以为确定能够,可是先后端分离,不想麻烦后端大哥了,就想用JSONP来跨域,app

可是一直提示CORB的这个限制
clipboard.png前后端分离

因而我就研究了一圈jsonp

CORB是啥url

CORB如何触发

CORB触发了大概有什么表现。

详细的能够看这大哥的文章 https://segmentfault.com/a/11...

简单说CORB会显示src资源的获取。这里触发了CORB是由于返回了response header的content-type是json

知足了触发条件,就致使返回的数据的body被覆盖为null

可是这里解决方案其实就是,想用jsonp须要设置参数 output: jsonp

就这样一个问题,折腾了一圈,啼笑皆非😂

如今想一想其实我用jsonp,腾讯返回给我json对象,我第一时间就应该想到这个格式不对的

这个json格式应该是给服务端代理,请求接口用的

相关文章
相关标签/搜索