【问题标题】:Can I change/set the Google Maps API Key dynamically from JavaScript?我可以从 JavaScript 动态更改/设置 Google Maps API 密钥吗?
【发布时间】:2010-11-01 18:04:44
【问题描述】:

我正在开发一个小型 Web 应用程序时遇到问题:我的 HTML 源代码将被集成到另一个站点上的 HTML 源代码中。我在我的代码中使用了谷歌地图,所以我必须传递一个 API 密钥来在当前域上加载谷歌地图脚本。

问题:我的代码将集成在两个不同的域中,需要两个不同的 API 密钥。我有这两个键,可以通过 JavaScript 识别有效的一个(在 document.location.host 的帮助下),但是我怎样才能设法使用正确的键动态加载脚本呢?

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

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

【问题讨论】:

    标签: javascript google-maps api-key


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      使用

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

      用你想使用的脚本源替换任何内容

      【讨论】:

      • 几乎,除了它需要是 document.getElementsByTagName("head")[0] 而不是 document.head
      • 用 iPhone 接听。有点难以检查。谢谢
      • 啊,谢谢,这应该或多或少很明显。 (对于选择器:嗯,jQuery 有点方便......)
      猜你喜欢
      • 1970-01-01
      • 2015-09-29
      • 1970-01-01
      • 1970-01-01
      • 2019-06-16
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 2011-02-17
      相关资源
      最近更新 更多