我可以动态地从JavaScript更改/设置Google Maps API密钥吗?

时间:2009-06-10 09:29:42

标签: javascript google-maps api-key

我正面临着我正在开发的小型Web应用程序的问题:我的HTML源代码将集成到另一个站点的HTML源代码中。我在我的代码中使用Google地图,因此我必须传递API密钥才能在当前域中加载Google地图脚本。

问题:我的代码将集成在两个不同的域上,需要两个不同的API密钥。我有这两个密钥,可以通过JavaScript识别有效密钥(在document.location.host的帮助下),但是如何设置用正确的密钥动态加载脚本?

供参考:密钥在脚本加载网址中作为参数传递:

<script src="http://maps.google.com/maps?file=api&v=2&key=abcdefg" type="text/javascript">
</script>

2 个答案:

答案 0 :(得分:5)

使用

var script = document.createElement("script");
script.setAttribute("src",whatever);
document.getElementsByTagName("head")[0].appendChild(script);

使用您要使用的脚本源替换任何内容

答案 1 :(得分:0)

我刚刚写了a would-be solution to this problem。看看,让我知道你的想法。它是一个上下文处理器,可根据请求中的域动态加载密钥。