根据 https://developers.google.com/maps/documentation/javascript/tutorial#HTML5 , 看来我可以将以下标记添加到我的 html 并开始使用 maps js API。
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
</script>
但这会泄露我的 API key 。
在google上搜索和stackoverflow上的浏览答案后,我觉得也许没有必要隐藏这个API key 。当我在谷歌上创建 API key 时,我只需要设置 referer,如中所述 https://stackoverflow.com/a/2256312/1316649
因此,即使其他人知道我的 API key ,他们也无法从其他域使用它。我说得对吗?
但是谷歌说你不应该在代码中嵌入 API key : https://support.google.com/cloud/answer/6310037
那么,在使用 google maps js API 时是否需要隐藏 API key ?如果是,怎么办?
更新:“API key ”是指浏览器 API key 。
最佳答案
您可以创建多个具有不同限制的 API key 以安全地使用它们。对于嵌入 map ,Google map 文档提供了创建正确限制的 API key 的说明,以便它不会被滥用于其他目的,网址为 Get an API Key - Restricting API keys。 .可以在您的源代码中包含一个受限的 API key ,因为无论如何您都无法正确嵌入 map 。
如果您需要服务器端 API 访问权限,您可以创建限制较少的第二个 API key 。那个应该保密。
关于javascript - 使用 google maps js API 时是否需要隐藏 API key ?如果是这样,如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38153734/