|
|
昨天给网站升级了https,今天发现打开公司介绍页面百度地图不显示了。错误提示:
+ p. H5 @8 l z0 G7 k3 |# d7 i* L+ Z
/ l; _; Z3 @3 M: s1 x! y! v$ g- Mixed Content: The page at ‘https://www.******.com/public/admin/index/index.html
1 C0 w. _% Q7 `# v; \# q6 A5 u' y - ’ was loaded over HTTPS, but requested an insecure script ‘http://api.map.baidu.com/api?v=1.4
6 G' c4 D* c1 |! b" w1 D/ ? - ‘. This request has been blocked; the content must be served over HTTPS.
. K6 M: p4 _2 }) l - VM255 addshopview.html:381 Uncaught ReferenceError: BMap is not defined.
复制代码 ) G, |7 J* U, R; K; A4 J, L- H* h
6 Q( H) Q0 l# M) I, n: w& p0 h( B
这个问题是因为在百度的JavaScript API V2.0版本才支持https,而原来的是不支持的。
) i# |4 c0 D/ e1 t4 m" }
' p: h7 M3 X- S7 A0 p6 [& t配置方法:9 f; K- G4 o- l" [: L a
. C* x- v; }$ Z! t& x% a
1. 如果使用JavaScript API ,需要加一个特殊字段 (s=1):5 ]! y( e: }- { T
https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1;0 i5 b( s9 u8 [/ n5 r" X
2. 对于Web API 无需加特殊字段,直接使用 HTTPS协议访问即可,如Geocoding:4 O! I: M; I2 d5 n) X
https://api.map.baidu.com/geocoder/v2/?ak=你的秘钥&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=16 ~- g. c2 ^# M# {( _, i9 ]+ U
3. 如果对数据安全要求高,建议使用 POST请求,避免把请求参数放到 URI中敏感信息被泄露;5 A* G0 i8 |* S& a
* j5 T8 U9 D7 x/ O
- k/ |( r, r* \. d" q/ y非常欢快的用第一种方法复制替换之后,发现在使用百度地图API的时候,运行在浏览器上出现:
& d0 t% O% ~) i8 {
) ?6 A/ h- y q9 s) k百度未授权使用地图API,可能是因为您提供的密钥不是有效的百度LBS开放平台密钥,或此密钥未对本应用的百度地图JavaScriptAPI授权。您可以访问如下网址了解如何获取有效的密钥:http://lbsyun.baidu.com/apiconsole/key#。
- A% d. Y' x( _2 d$ `1 s: K: W错误提示,检查之后发现需要一个百度地图的AK密钥,这个密钥目前是免费申请的,网址就是提示的这个网址:http://lbsyun.baidu.com/apiconsole/key#5 s) ~3 Y2 `. @2 u
" Q" S/ g3 V2 S2 U: b& v& w登陆之后,第一个选项就是创建AK的。
' W& o3 x9 {4 c, h点击创建应用
' P4 W4 Q0 H1 ]/ A" E
! Y3 P8 p$ p7 D% ?9 o0 \ O% A* Q# `' ^; j; G# Z2 u% ?1 \
应用名称 自己填一个
% o6 b0 y1 A3 X5 K# b. e: t% z应用类型 浏览器端 (这个一定要填浏览器端,刚开始直接默认的第一个,死活也不好使,后来才发现是选错了……)$ b1 O3 @/ o1 X8 |/ Q: m
启用服务 默认全选就可以. V# W- b3 k1 b, I% y) S
Referer白名单 按照说明要求填写,最好是你用的哪个网站调用,就写对应的域名规则,尽量不要全放开。
2 l" S, |* Z% }然后把密钥替换到https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1中你的密钥的位置,然后替换掉原来的JavaScript API 即可。 d/ C! J! l y6 _8 z) G E
0 U w& ?' d7 F! I8 |% O刷新页面,地图又回来了。
% C+ d0 k1 W+ {" _- X. j( L9 K5 f3 ^* o4 i# m
# F f2 o" j5 F8 Q' L+ Z6 N+ i8 I( U |
|