首頁  >  問答  >  主體

javascript - 调用百度地图api,chrome显示连接不安全,请求被禁止,需要https,怎样解决

本人调用了百度地图的API接口,在Firefox本地可以测试成功,而chrome失败,怎么回事,而将页面上传到github-pages中显示,在firefox设置解除保护,可以正常显示,但在chrome却不能显示,控制台信息如下:

4 Mixed Content: The page at 'https://lchreal6.github.io/fc...' was loaded over HTTPS, but requested an insecure script 'http://api.map.baidu.com/geoc...…3338585&location=23.0444612,113.3882067&output=json&pois=1&_=1474943338586'. This request has been blocked; the content must be served over HTTPS.

调用接口代码如下

$.getJSON('http://api.map.baidu.com/geocoder/v2/?ak=0FuoX30MFf7YMrdS5Wi9GGAcHBblKDuu&callback=?&location='+latitude+','+longitude+'&output=json&pois=1', function(res){
       
        $("#location").html(res.result.addressComponent.city);
        yourCurCity = res.result.addressComponent.city;
       
       
       
        

});

该怎样解决才能在chrome上正常显示。

PHP中文网PHP中文网2770 天前520

全部回覆(2)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-11 13:03:33

    目测问题应该是你自己的网站是https协议,而请求的目标接口是http协议,所以会出现这个问题。

    哈哈,打个广告,我自己写了个天气接口,不过只能查询国内的(https协议,支持GET/POST):
    点我查询北京的天气

    具体用法看这里-wiki

    回覆
    0
  • 迷茫

    迷茫2017-04-11 13:03:33

    你自己的页面所放的服务器应该是https的,这样你里面的请求也得是https的。
    百度地图的话,你可以直接把http换成https,然后后面加上s=1。

    回覆
    0
  • 取消回覆