百度地圖api在https中不生效的解決方法

發布時間:2023-01-09 01:52:24 瀏覽量:1401次

官網(wang)項目(mu)上線后(hou),加(jia)入(ru)(ru)了HTT[S安全證書(shu)。但是引入(ru)(ru)百(bai)度的jsApi后(hou),發現在網(wang)頁無法(fa)顯(xian)示百(bai)度地圖。

引入的(de)(de)(de)jsApi是(shi)用(yong)的(de)(de)(de)https的(de)(de)(de),也(ye)按要求加(jia)入了的(de)(de)(de)參數。但是(shi)打開項目發現,getscript所加(jia)載出來的(de)(de)(de)文件,還(huan)是(shi)使(shi)(shi)用(yong)的(de)(de)(de)是(shi)http協議。 繼續排查發現在(zai)(zai)getscript里面(mian)有個全局變量(liang)(liang)HOST_TYPE,而(er)這(zhe)(zhe)個變量(liang)(liang)官方并(bing)(bing)沒有給出什么地方設置出來。HOST_TYPE默認是(shi)“0”,而(er)0走的(de)(de)(de)就是(shi)http的(de)(de)(de)請求,并(bing)(bing)非https的(de)(de)(de)。所以,我們需要在(zai)(zai)加(jia)載jsapi加(jia)載之前,使(shi)(shi)用(yong)window.HOST_TYPE強(qiang)行把(ba)這(zhe)(zhe)個值(zhi)設置成"2" ,這(zhe)(zhe)樣就可以愉快的(de)(de)(de)在(zai)(zai)https里面(mian)使(shi)(shi)用(yong)百度地圖了

第一步 添加代碼

20230109020702ad27c8382.png

第二步 添加代碼

注意(yi):api引(yin)用 //? ? 然(ran)后密匙后面(mian)加(jia)入&s=1

end