搜索
查看: 24158|回复: 0

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

[复制链接]
发表于 2021-1-19 17:59:57 | 显示全部楼层 |阅读模式
昨天给网站升级了https,今天发现打开公司介绍页面百度地图不显示了。错误提示:
- D% M2 j2 s1 Z
3 ^) S& _& R2 L( G7 `& y3 g- _. {1 t0 E# d" y
  1. Mixed Content: The page at ‘https://www.******.com/public/admin/index/index.html; ]- J3 E. X/ T, u. }9 _+ }
  2. ’ was loaded over HTTPS, but requested an insecure script ‘http://api.map.baidu.com/api?v=1.4
    # n% }" ~; w. v6 b
  3. ‘. This request has been blocked; the content must be served over HTTPS./ |" z2 c5 a1 _! K  \9 j7 r
  4. VM255 addshopview.html:381 Uncaught ReferenceError: BMap is not defined.
复制代码

( a4 a1 k; f3 Q) ^! j
, Z! M8 C4 _" E+ g$ H这个问题是因为在百度的JavaScript API V2.0版本才支持https,而原来的是不支持的。
! ?! m4 i$ A" d% ?6 D; [! ?, S! @  ?# X( |
配置方法:% y8 T& V) i  p; S% E; M
& y+ R0 ^) a' P. Q0 }0 \/ b6 W
1. 如果使用JavaScript API ,需要加一个特殊字段 (s=1):7 _& [; e& s5 |- z: V4 X0 k$ ]7 b6 y  q
https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1;  [' n- i& U1 ?. Y
2. 对于Web API 无需加特殊字段,直接使用 HTTPS协议访问即可,如Geocoding:. H# X+ k2 r) \7 M
https://api.map.baidu.com/geocoder/v2/?ak=你的秘钥&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=1
3 |9 }% T- l5 n; W) x2 @3. 如果对数据安全要求高,建议使用 POST请求,避免把请求参数放到 URI中敏感信息被泄露;; c. F4 ^7 F6 E

* p4 [* ~5 v; O3 Q
* G. F9 I8 U+ A/ r& s2 i非常欢快的用第一种方法复制替换之后,发现在使用百度地图API的时候,运行在浏览器上出现:% i3 `) P5 H" J0 n- d
4 K- f9 P8 z/ l3 \9 ?
百度未授权使用地图API,可能是因为您提供的密钥不是有效的百度LBS开放平台密钥,或此密钥未对本应用的百度地图JavaScriptAPI授权。您可以访问如下网址了解如何获取有效的密钥:http://lbsyun.baidu.com/apiconsole/key#& G& ?5 J7 ?- B# s
错误提示,检查之后发现需要一个百度地图的AK密钥,这个密钥目前是免费申请的,网址就是提示的这个网址:http://lbsyun.baidu.com/apiconsole/key#
$ ]/ e8 _; C) f3 P$ z* G5 t: C, k+ @1 z; S
登陆之后,第一个选项就是创建AK的。4 O- o- `) P+ C3 i+ e
点击创建应用4 N! n+ d0 C0 B+ z* i- k

; V. j" `8 D* r0 D

* q0 [3 f& x) m) e2 c  Z! l应用名称 自己填一个, D& j! F) ~) |4 ^
应用类型 浏览器端  (这个一定要填浏览器端,刚开始直接默认的第一个,死活也不好使,后来才发现是选错了……)( {0 x( `6 W& P3 a& L: \0 w  N
启用服务 默认全选就可以
2 M4 d- _4 i# h+ n$ f" pReferer白名单 按照说明要求填写,最好是你用的哪个网站调用,就写对应的域名规则,尽量不要全放开。/ t  O" [4 _- E3 J9 ~  G5 {
然后把密钥替换到https://api.map.baidu.com/api?v=2.0&ak=你的密钥&s=1中你的密钥的位置,然后替换掉原来的JavaScript API 即可。
4 j" e1 {! o1 ]5 O, K2 ~) c. a5 J( Q) i6 I6 M; L& v( p
刷新页面,地图又回来了。
  x" t! i& O# R+ _. U# [8 M4 b4 u2 W
' T. r3 b1 h: N4 ]
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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