|
昨天给网站升级了https,今天发现打开公司介绍页面百度地图不显示了。错误提示:) E8 J d0 D9 L* b. j0 ^
$ [7 K- T& s! d6 R( k/ `2 Y
. W) M# h& k* F V/ d/ g4 N8 m6 i- Mixed Content: The page at ‘https://www.******.com/public/admin/index/index.html4 o0 `' P& p' W# J4 t; L) c: }6 c% Y
- ’ was loaded over HTTPS, but requested an insecure script ‘http://api.map.baidu.com/api?v=1.4
6 b- e# y4 Y1 i3 z) b/ U - ‘. This request has been blocked; the content must be served over HTTPS.( V8 {7 h3 A, U! d; F4 M9 [- e+ @9 F; G
- VM255 addshopview.html:381 Uncaught ReferenceError: BMap is not defined.
复制代码 ! v5 m: {* ]: A" P! P' Y! {+ s; m
/ e! v) }0 n) b- ^, p这个问题是因为在百度的JavaScript API V2.0版本才支持https,而原来的是不支持的。
6 X5 y( H+ |6 l9 w4 {; I B. T. [2 t' P2 q; u
配置方法:
& [2 M$ U! D# U4 _$ F1 l8 j A+ ^8 @2 O
1. 如果使用JavaScript API ,需要加一个特殊字段 (s=1):! b6 Z) }; Y1 J; x9 E6 x( F
https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1;% b, h" q5 |5 e0 I, A+ L3 `
2. 对于Web API 无需加特殊字段,直接使用 HTTPS协议访问即可,如Geocoding:4 _3 W+ s( r _
https://api.map.baidu.com/geocoder/v2/?ak=你的秘钥&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=17 B M4 X ?; P
3. 如果对数据安全要求高,建议使用 POST请求,避免把请求参数放到 URI中敏感信息被泄露;
# {4 h" E- Y7 Y, T
2 z' L7 k1 G% H5 M, Q7 H6 e1 e2 f, T; e$ P
非常欢快的用第一种方法复制替换之后,发现在使用百度地图API的时候,运行在浏览器上出现:$ @: ?$ V) ]8 C) [0 H- ~9 c
% `/ [) J! Q3 h- X, A/ K百度未授权使用地图API,可能是因为您提供的密钥不是有效的百度LBS开放平台密钥,或此密钥未对本应用的百度地图JavaScriptAPI授权。您可以访问如下网址了解如何获取有效的密钥:http://lbsyun.baidu.com/apiconsole/key#。6 L" U6 S: z4 E: F( x
错误提示,检查之后发现需要一个百度地图的AK密钥,这个密钥目前是免费申请的,网址就是提示的这个网址:http://lbsyun.baidu.com/apiconsole/key#5 }$ H. ?9 @# ^% w' d. S& N- i
& h9 w8 ~4 r$ y; {* U3 J6 k登陆之后,第一个选项就是创建AK的。6 i( z, Z3 W+ R
点击创建应用
x+ r4 h) ?" O( Y4 e2 W/ g8 \# N3 C" n
1 X2 b1 q4 A& E" b$ X1 b3 f应用名称 自己填一个7 A% x6 @6 _+ n' Q
应用类型 浏览器端 (这个一定要填浏览器端,刚开始直接默认的第一个,死活也不好使,后来才发现是选错了……)% |* Q+ |! }+ E7 v# N4 f
启用服务 默认全选就可以, U* e0 `8 Z2 F; x6 g) e& `% i
Referer白名单 按照说明要求填写,最好是你用的哪个网站调用,就写对应的域名规则,尽量不要全放开。
* \: v, p8 p& j ^( }8 L然后把密钥替换到https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1中你的密钥的位置,然后替换掉原来的JavaScript API 即可。/ o' }; {5 @% T% n, t v4 q
4 |3 S6 T f6 j; Z: O& b2 R$ v5 F+ a
刷新页面,地图又回来了。 m, E$ E/ `- |) q
3 i' I1 `! A) x2 ?' I% @" [8 Q: G J: `( w
|
|