当网址仅为http时,我能够在this page上成功显示谷歌地图,现在我将其设为https后,会出现以下错误: NetworkError:403禁止 - https://maps-api-ssl.google.com/maps/api/js/ViewportInfoService.GetViewportInfo?1m6&1m2&1d41.88098829471135&2d-87.65924221147355&2m2&1d41.88841667852121&2d-87.6252154211187&2u17&4sen-US&5e0&6sm%40347000000&7b0&8e0&9b0&callback=xdc._1eql41&token=45632
有关我在这里失踪的建议吗?
答案 0 :(得分:0)
根据此documentation,您的http请求看起来应该更像这样:http://maps.googleapis.com/maps/api/service/output?parameters
。包含用户数据或开发者标识符的所有Maps API Web服务请求都需要HTTPS。通过HTTP进行的包含敏感数据的请求可能会被拒绝。
此HTTP and HTTPS protocols are considered different URLs文档中还发现,如果授权 HTTPS ,则 HTTP 不一定经过授权。如果您想同时授权两者,则可以在不使用协议的情况下添加域名:example.com/
。
403 Forbidden error表示您无权查看请求的文件或资源。虽然有时这是故意的,但有时候是由于权限配置错误。
Why am I receiving a HTTP 403 Forbidden response to my Maps API web service requests?
HTTP 403响应表示权限问题,可能是因为 无法验证此请求的签名。这可能是 这是因为:
- 已指定签名但此请求不正确。
- 该请求指定了Google Maps API Premium Plan客户端ID,但未指定签名,并且正在调用Web服务 要求使用客户端ID进行的所有请求都包含有效请求 签名。
- 已指定签名,但尚未指定关联的Google Maps API Premium Plan客户端ID。
希望这有帮助!