|
|
昨天给网站升级了https,今天发现打开公司介绍页面百度地图不显示了。错误提示:6 v' }& ~+ \5 l# \" f# S; J( ]
) Y: o. @$ x2 {3 t" s7 p8 a* j2 o6 |' e
- Mixed Content: The page at ‘https://www.******.com/public/admin/index/index.html- H, T$ k& L3 {. H( Y/ m( t8 W
- ’ was loaded over HTTPS, but requested an insecure script ‘http://api.map.baidu.com/api?v=1.4
' L1 a# e+ u6 p# v& E - ‘. This request has been blocked; the content must be served over HTTPS.
8 ^0 W) V8 U; _ - VM255 addshopview.html:381 Uncaught ReferenceError: BMap is not defined.
复制代码
9 U& b; A& ]' z2 L; Z# p/ c7 [" P- v4 Q! h
这个问题是因为在百度的JavaScript API V2.0版本才支持https,而原来的是不支持的。4 J+ T* m5 t8 G' l9 [/ ?2 C6 n% d
. R2 \- [$ u& r" B! G0 e/ K( Z
配置方法:' o7 [( u% v$ K- S) c. t
( R" s% y& w7 b3 @8 Q
1. 如果使用JavaScript API ,需要加一个特殊字段 (s=1):
, A8 a" j$ \9 O& V jhttps://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1;
" x, ~ g# F. }2. 对于Web API 无需加特殊字段,直接使用 HTTPS协议访问即可,如Geocoding:9 Z6 | }. l# G6 h! q1 E
https://api.map.baidu.com/geocoder/v2/?ak=你的秘钥&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=1* R! U7 E- O( ~" z
3. 如果对数据安全要求高,建议使用 POST请求,避免把请求参数放到 URI中敏感信息被泄露;8 i, p! |# `3 s5 a
4 U2 q+ M1 Q4 a) [
7 ~, g6 w7 ?" I: P1 v6 l, K非常欢快的用第一种方法复制替换之后,发现在使用百度地图API的时候,运行在浏览器上出现:
4 w) E( ?8 q' U# f& \1 ^# s7 M x2 Z$ V
百度未授权使用地图API,可能是因为您提供的密钥不是有效的百度LBS开放平台密钥,或此密钥未对本应用的百度地图JavaScriptAPI授权。您可以访问如下网址了解如何获取有效的密钥:http://lbsyun.baidu.com/apiconsole/key#。
8 K3 Q0 {% S4 H# z+ T& r( Y) [错误提示,检查之后发现需要一个百度地图的AK密钥,这个密钥目前是免费申请的,网址就是提示的这个网址:http://lbsyun.baidu.com/apiconsole/key#
8 T! b* N8 ]" Q) Y& q' T8 S+ \) l# G& ]: k& m% W2 i
登陆之后,第一个选项就是创建AK的。
* m3 a/ L: N! F# c; q# K6 `点击创建应用
/ ] I2 O* P, F2 t+ a. ?0 A. u3 \* G: { v$ z3 y1 h/ n+ I4 ~5 l
* o% G! f9 q5 J0 l: w n6 ?8 U7 F
应用名称 自己填一个, _% C8 S& D' c. w2 A
应用类型 浏览器端 (这个一定要填浏览器端,刚开始直接默认的第一个,死活也不好使,后来才发现是选错了……)1 j, U4 g/ V" R( @- P2 f! C0 }# ]
启用服务 默认全选就可以
/ F! Q7 G' _9 KReferer白名单 按照说明要求填写,最好是你用的哪个网站调用,就写对应的域名规则,尽量不要全放开。
- Z3 J: k- B5 R. e% D1 R然后把密钥替换到https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1中你的密钥的位置,然后替换掉原来的JavaScript API 即可。
" m+ P1 `8 n# N7 x4 Y5 j) F1 t- p! l1 c% [4 K
刷新页面,地图又回来了。" a0 \, u/ G- C. ]4 v1 b
# Y( E) s8 I5 E" V/ s
3 m4 w6 D6 ^$ R0 C9 M8 V, n# d2 m+ ? |
|