【问题标题】:Google Autocomplete Address Form Security [duplicate]谷歌自动完成地址表单安全[重复]
【发布时间】:2019-12-22 04:37:29
【问题描述】:

我一直在研究 Google 自动完成地址表单,他们有一些很好的例子,它们运行良好,我在实现它们时并没有遇到问题,除了 api 密钥暴露在文档的 html 中对我来说意味着任何人都可以复制该密钥,使用它,然后我会为此付费。或者也许我在这里忽略了一些东西?所以出于这个原因,我发现以这种方式使用自动完成不是很安全。

此处的示例:https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform

我能想到的唯一解决方法是将调用移动到我自己的服务器上,这样 api 密钥就不会被暴露,但是我将失去所有我可以利用的 javascript 库函数,如图所示上面的例子。我试图弄清楚是否有一种方法可以使用他们的库来调用自动完成而不将 api 密钥暴露给浏览器,或者如果没有,我在哪里可以找到我可以进行的服务器调用列表并拥有前端调用我的服务器,然后通过服务器到服务器调用从谷歌返回结果?

【问题讨论】:

    标签: javascript google-maps autocomplete google-geocoding-api google-geolocation


    【解决方案1】:

    对于 Google Maps JavaScript API,您无法从代码中隐藏 API 密钥。为了保护您的 API 密钥免遭未经授权的使用,您必须在 Google Cloud 控制台中为您的 API 密钥应用限制。

    Google Maps JavaScript API 支持 HTTP 引荐来源网址限制,因此您可以指定有权使用您的 API 密钥的网站。来自不同域的请求将被拒绝。

    看看官方文档中的详细解释:

    https://developers.google.com/maps/faq#keysystem

    我希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-25
      • 1970-01-01
      • 2013-03-23
      • 2017-09-16
      • 2012-10-14
      • 2021-04-12
      • 1970-01-01
      • 2015-04-22
      相关资源
      最近更新 更多