- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个网站,该网站使用 Google 地理编码通过搜索字符串获取某个位置的纬度/经度。该应用程序上周运行良好,但本周就停止了。我没有更改网站或 Google API 控制台上的任何内容;它只是自行停止工作。
这个网站是别人很久以前建的,历经了很多团队,所以有点乱。它实际上同时使用了 JS 地理编码器和 Ruby 地理编码器 gem。我创建了一个新的 Google 开发者帐户用于测试,并创建了两个公共(public) API 访问 key :1 个用于浏览器应用程序,1 个用于服务器应用程序。我将本地互联网的 IP(对于 localhost)和临时服务器设置为服务器 key ,并将浏览器 key 的引荐来源网址设置为 http://localhost:3000/*
和 https://staging.myserver.com/*
。这是上周五,一切都很顺利。
昨天,我在该网站上工作时,注意到地理编码器不再工作。我在尝试搜索位置时收到此错误消息:
Google has disabled use of the Maps API for this application. This site is not authorized to use the Google Maps client ID provided. If you are the owner of this application, you can learn more about registering URLs here: https://developers.google.com/maps/documentation/business/clientside/auth#registering_authorized_urls
这让我很困惑,因为我没有传递任何客户端 ID。下面是相关的JS函数:
Locations.getNearbyLocationsFromAddress = function(address) {
var deferred = $.Deferred();
Locations.google_ready_deferred = $.Deferred();
if (typeof(google) === "undefined") {
$.getScript("https://maps.googleapis.com/maps/api/js?key=<%= KEYS['GOOGLE_MAPS_API_KEY'] %>&sensor=true&channel=Royalty&callback=RedRoyalty.Locations.googleReady");
} else {
Locations.google_ready_deferred.resolve();
}
Locations.google_ready_deferred.done(function() {
var geocoder = new google.maps.Geocoder();
geocoder.geocode({'address': address, 'region': 'us'}, function(results, status) {
if (results.length == 0) {
$(".js-locations-form input").addClass("error");
$(".errors").html("Sorry, you've gotta enter a valid location. Mind trying again?");
return;
} else {
$(".js-locations-form input").removeClass("error");
$(".errors").empty();
}
var targetResult = -1;
for (var i=0; i<results.length; i++) {
for (var j=0; j<results[i].address_components.length; j++) {
if ($.inArray('country', results[i].address_components[j].types) >= 0) {
if (results[i].address_components[j].short_name == "US" || results[i].address_components[j].short_name == "CA") {
targetResult = i;
break;
}
}
}
if (targetResult !== -1) break;
}
if (targetResult === -1) targetResult = 0;
Locations.getNearbyLocationsFromCoordinates({
latitude: results[targetResult].geometry.location.lat(),
longitude: results[targetResult].geometry.location.lng()
}, deferred);
});
});
return deferred;
};
我尝试解决此问题的第一件事是从我的公共(public)访问 key 中删除所有 IP 和引荐来源网址。这不起作用,所以我使用全新的 key (没有 IP 或引荐来源网址)创建了一个全新的 Google 开发者帐户。我更新了网站上的 key ,重新启动......但仍然没有任何结果。我继续排除故障,但大约 20 分钟后它就开始自行工作了!再一次,我没有改变任何东西。
然而,今天早上,我遇到了与昨天相同的错误。查看我创建的第二个帐户的 Google API 控制台,我可以看到它已经超出了每天 0 个请求的配额...但是为什么它昨天还能工作呢?此外,为什么第一个帐户的 key 不起作用?我实际上在该帐户上启用了计费,因此它没有超出任何配额。
服务器 key (由 Ruby gem 使用)在整个过程中一直有效。
我做错了什么?
编辑:可能值得注意的是,当我根本不使用 API key 时,这也适用,尽管我不认为这是一个永久的解决方案,因为生产站点将获得太多流量而无法保持在未付费配额内(对吗?) .
最佳答案
我已在 Google API 控制台中的 API 下启用了“Google Maps JavaScript API v3”,但在执行此操作后我需要重新生成 key 。有点令人沮丧的是,谷歌发出的错误消息中只有第一句话是正确的,但它现在可以工作了。万岁!
关于javascript - Google map API v3 key 停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26000290/
查看“mysqldump -d”并看到一个键是 KEY,而不是“PRIMARY KEY”或“FOREIGN KEY” 什么是关键? 示例: CREATE TABLE IF NOT EXISTS `TA
在我开始使用 Python 的过程中尝试找出最佳编码实践。我用 Pandas 写了一个 csv 到数据框阅读器。它使用格式: dataframe = read_csv(csv_input, useco
在 Flutter 中,用一个例子可以清楚地解释什么? 我的困惑是关于 key,如下面的代码所示。 MyHomepage({Key key, this.title}) : super(key: key
我在我的 Android 应用程序中使用 GCM。要使用 GCM 服务,我们需要创建 Google API key 。因此,我为 android、服务器和浏览器 key 创建了 API key 。似乎
我想在 azure key 保管库中创建一个 secret ,该 key 将具有多个 key (例如 JSON)。 例如- { "storageAccountKey":"XXXXX", "Co
尝试通过带有 encodeforURL() 的 url 发送 key 时,我不断收到错误消息和 decodefromUrl() .代码示例如下。 这是我的入口页面: key = generateSec
是否有检查雪花变体字段中是否存在键的函数? 最佳答案 您可以使用 IS_NULL_VALUE 来查看 key 是否存在。如果键不存在,则结果将为 NULL。如果键存在,如果值为 JSON null,则
我正在尝试运行此命令: sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A 但我收到一个错误: Execu
我有一个 csv 文件,我正在尝试对 row[3] 进行计数,然后将其与 row[0] 连接 row[0] row[3] 'A01' 'a' 'B02'
如何编写具有这种形式的函数: A(key, B(key, C(key, ValFactory(key)))) 其中 A、B 和 C 具有此签名: TResult GetOrAdd(string key
审查 this method我很好奇为什么它使用 Object.keys(this).map(key => (this as any)[key])? 只调用 Object.keys(this).ind
我有一个奇怪的情况。我有一个字典,self.containing_dict。使用调试器,我看到了字典的内容,并且可以看到 self 是其中的一个键。但是看看这个: >>> self in self.c
我需要在我的 Google Apps 脚本中使用 RSA-SHA256 和公钥签署消息。 我正在尝试使用 Utilities.computeRsaSha256Signature(value, key)
我是 React 的初学者开发人员,几天前我看到了一些我不理解的有趣语法。 View组件上有{...{key}},我会写成 key={key} ,它完全一样吗?你有链接或解释吗? render()
代理 key 、合成 key 和人工 key 之间有什么区别吗? 我不清楚确切的区别。 最佳答案 代理键、合成键和人工键是同义词。技术关键是另一个。它们都表示“没有商业意义的主键”。它们不同于具有超出
问题陈述:在 Web/控制台 C# 应用程序中以编程方式检索并使用存储在 Azure Key Vault 中的敏感值(例如数据库连接字符串)。 据我所知,您可以在 AAD 中注册应用,并使用其客户端
问题陈述:在 Web/控制台 C# 应用程序中以编程方式检索并使用存储在 Azure Key Vault 中的敏感值(例如数据库连接字符串)。 据我所知,您可以在 AAD 中注册应用,并使用其客户端
我正在寻找 Perl 警告的解决方案 “引用键是实验性的” 我从这样的代码中得到这个: foreach my $f (keys($normal{$nuc}{$e})) {#x, y, and z 我在
我正在为 HSM 实现 JCE 提供程序 JCE中有没有机制指定 key 生成类型例如: session key 或永久 key KeyGenerator keygen = KeyGener
我在 Facebook 上创建了一个应用程序。我已经正确添加了 keyhash 并且应用程序运行良好但是当我今天来并尝试再次运行它时它给了我这个错误。 这已经是第二次了。 Previsouly 当我收
我是一名优秀的程序员,十分优秀!