搜索
查看: 24046|回复: 0

[网站] 网站升级https后百度地图不显示解决方法

[复制链接]
发表于 2021-1-19 17:59:57 | 显示全部楼层 |阅读模式
昨天给网站升级了https,今天发现打开公司介绍页面百度地图不显示了。错误提示:! U6 I5 P! N! S

. q+ P. l8 h% f3 R# [3 o5 U
- M6 l+ A* R( R
  1. Mixed Content: The page at ‘https://www.******.com/public/admin/index/index.html) j# c- Z$ Q$ s2 X
  2. ’ was loaded over HTTPS, but requested an insecure script ‘http://api.map.baidu.com/api?v=1.46 `* U) A0 l3 p  g- }8 ?  g
  3. ‘. This request has been blocked; the content must be served over HTTPS.  c/ q& Y7 j' g4 z& O8 e
  4. VM255 addshopview.html:381 Uncaught ReferenceError: BMap is not defined.
复制代码

9 ^( ?4 ]) k7 F  K: ^5 G
5 h$ i% I# l6 l; i& B/ P/ u9 N这个问题是因为在百度的JavaScript API V2.0版本才支持https,而原来的是不支持的。" l' P+ w8 @  c9 K0 Y1 c
* J. o$ d6 Z, G, ?( z
配置方法:
# |  n* F, U: b2 n4 L$ z: k
& @* t: ?5 U( e8 [) ?' N1. 如果使用JavaScript API ,需要加一个特殊字段 (s=1):
" @8 l- j/ V/ O. ^, thttps://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1;
( [6 S& Z: y. z% \9 q( {1 |2. 对于Web API 无需加特殊字段,直接使用 HTTPS协议访问即可,如Geocoding:
" `9 \$ P/ c) _( B. B- \" a8 ^- `https://api.map.baidu.com/geocoder/v2/?ak=你的秘钥&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=19 o$ i5 A' t6 \) c1 a
3. 如果对数据安全要求高,建议使用 POST请求,避免把请求参数放到 URI中敏感信息被泄露;
5 O8 K! a* D8 y+ P/ }+ o% E
, C2 L: u& Y0 l) T9 v7 F( t, Z! r: d1 X# m% Y/ Q
非常欢快的用第一种方法复制替换之后,发现在使用百度地图API的时候,运行在浏览器上出现:
* Q9 ?& {# z9 v2 \7 z6 b' X, N0 i- E; b( p& z. I
百度未授权使用地图API,可能是因为您提供的密钥不是有效的百度LBS开放平台密钥,或此密钥未对本应用的百度地图JavaScriptAPI授权。您可以访问如下网址了解如何获取有效的密钥:http://lbsyun.baidu.com/apiconsole/key#
; n  p/ q5 a7 O8 P, c3 @# d错误提示,检查之后发现需要一个百度地图的AK密钥,这个密钥目前是免费申请的,网址就是提示的这个网址:http://lbsyun.baidu.com/apiconsole/key#% M- T/ ~* K8 ?/ J5 v% J$ x

8 o* d7 d8 o1 ^" |( |% i登陆之后,第一个选项就是创建AK的。7 G- N' Q; }- t- O! y5 E; w2 H
点击创建应用
5 {% E/ d; G( n, W
0 A$ z% X* L3 y, N* R: d
& D; @$ |: ^$ N- i
应用名称 自己填一个4 A- ^1 M; z& P* o
应用类型 浏览器端  (这个一定要填浏览器端,刚开始直接默认的第一个,死活也不好使,后来才发现是选错了……)
, q1 {1 _, S$ B; J4 J' y* {2 b2 {启用服务 默认全选就可以' W, p! k! [5 y+ P8 E+ S4 {( d
Referer白名单 按照说明要求填写,最好是你用的哪个网站调用,就写对应的域名规则,尽量不要全放开。
! r  R8 z# B) ]  K然后把密钥替换到https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1中你的密钥的位置,然后替换掉原来的JavaScript API 即可。
6 A3 k0 L6 u3 y: J  e0 J+ E1 L' P; p# \
刷新页面,地图又回来了。
/ B4 c/ z9 s: h& I1 \
; V" V5 t5 N6 F4 b8 p. v
# r, H  O) X- o! W8 E% O; @  E
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表