299

我有一个纬度和经度:"-27.0000,133.0000"。我想以此为基础制作地图。

我试过去这个链接

https://maps.googleapis.com/maps/api/geocode/json?latlng=-27.0000,133.0000&key=******

我在浏览器上不断收到此错误

{
   "error_message" : "This API project is not authorized to use this API. Please ensure that this API is activated in the APIs Console: Learn more: https://code.google.com/apis/console",
   "results" : [],
   "status" : "REQUEST_DENIED"
}

但我想我已经启用了那个 API。我登录到我的 Google 控制台,然后仔细检查。

当我去:https://console.developers.google.com/project/75423435770063/apiui/apis/enabled

我懂了 :

地理编码 + 地理定位已启用。

在此处输入图像描述

我现在有点卡住了。我在这里错过了什么吗?

4

23 回答 23

555

从你发的图片看,它是禁用的...

转到开发者控制台

导航到Google Maps->APIs

搜索地理编码并单击 Google Maps Geocoding API -> 启用 API。为地理定位做同样的事情

于 2015-10-07T17:20:05.843 回答
73

如果您使用 get 方法来获取地点,则需要启用

Google Places API 网络服务

我遇到了同样的问题,启用后解决了。

编辑:根据https://developers.google.com/places/web-service/get-api-key

注意:Google Places API Web 服务不适用于 Android 或 iOS 受限 API 密钥。

因此,如果或删除现有密钥的受限访问权限以使其正常工作,您必须创建新密钥。

于 2016-09-29T18:33:56.813 回答
47

还需要在 Google API 控制台中启用Directions API 。我启用了以下功能:

  • 路线 API
  • 地理编码 API
  • 地图 JavaScript API

我也启用了Geolocation API,但控制台没有显示它正在使用(0 个请求)。但也许它不是实时报告,所以无论如何启用都没有坏处。

于 2018-05-17T17:59:57.553 回答
26

我迟到了,但这里有另一个问题:Google 将 API 显示为已启用,但实际上并非如此。禁用然后重新启用它。

于 2017-04-03T14:36:57.400 回答
13

以下是对我有用的步骤:

  1. 启用路线 API;地理编码 API;地理定位 API console.cloud.google.com/google/maps-apis
  2. 启用 APIS 和服务以选择 API console.developers.google.com/apis/library
于 2018-10-16T17:16:48.473 回答
12

很可能 OP 启用了他们需要的一些但不是全部的 API,并且还没有指定密钥可以调用的启用的 API。Google Cloud Console 中有一个有点棘手的 UX 功能,用于限制对可能导致问题的 API 密钥的访问。

以下步骤每次都为我解决错误:

首先在https://console.cloud.google.com/google/maps-apis/api-list上检查您需要的 API 是否已启用(我在此答案的底部包含了大多数基本地图实现的常用 API):

如果不是,请转到左上角的导航菜单 > API 和服务 > 库,然后选择您需要的 API 并单击每个下方的启用按钮。

在此处输入图像描述

接下来,检查 API 密钥是否受 API 限制。通过转到 Navigation Menu > APIs & Services > Credentials 然后单击 API 密钥来执行此操作。如果您通过 API 限制来自密钥的调用,请确保在该屏幕上的 API 列表中检查了您需要的每个:

在此处输入图像描述

棘手的 UX 是默认情况下此列表不会显示所有可用的 API。例如,如果您尚未启用 Places API,则它不会出现在密钥可以调用的 API 列表中,直到您执行以下操作:

在此处输入图像描述 在此处输入图像描述

这是一个小问题,可能会导致一些混乱。对于大多数基本 Maps 实现来说,似乎可以让事情顺利运行的 API 是:

  • 地理编码 API
  • 地理位置 API
  • 地图 JavaScript API
  • 地方 API
于 2021-03-25T06:34:30.967 回答
8

在 API 管理器菜单中,您应该能够单击概览,在 Google Maps API 标题和地图图标下选择相关 API。

您的页面可能正在使用其他一些 API,例如 Places。全部启用它们,看看是否有帮助。

Google Places API Web 服务 Google Maps Geocoding API

于 2016-07-07T15:47:38.163 回答
8

您需要启用结算功能才能访问某些 Google Map API

错误信息 | 谷歌地图 JavaScript API

于 2019-02-15T08:05:09.590 回答
7

对我来说,我必须启用Maps Embed API 。

谷歌云控制台中

转到 API 选项卡,查看附加 API部分并尝试启用任何与地图相关的 API。

在此处输入图像描述

于 2020-04-29T20:46:38.913 回答
5

您需要从链接启用 API:

https://console.cloud.google.com/apis/library

于 2019-09-24T17:40:33.980 回答
3

从网页发送get请求axios,我需要(最后)启用Geocoding API

我还有 Places API、Maps Javascript API 和 Geolocation API。

感谢这些家伙

于 2020-10-11T22:20:16.127 回答
2

您忘记在开发者控制台中启用您的服务。

于 2017-09-04T17:12:43.983 回答
2

由于谷歌政策更新,您需要启用计费才能访问 Map API。

于 2018-10-02T14:22:21.267 回答
2

就我而言,我尝试使用上述所有答案来解决,但无法解决错误。

  • 请检查Credentials中的API 限制
  • 有 2 个选项“不限制键”“限制键”

我使用了“限制键”选项,只检查了 API “Maps SDK for Android”,这就是我收到错误的原因。需要检查您要使用哪些 API。编辑限制键后,您需要单击保存。

不限制密钥”选项应该没问题(Google 将显示安全警告⚠)
以下图像逐步显示。

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

于 2021-03-08T08:04:05.273 回答
1

如果您没有启用 API,但有 API 密钥,则从浏览器运行 API(例如在显示地图时)或将请求传递给 curl 命令时,您将不会收到该错误。只有在代码中调用 API 时才会出现该错误。在 Python 中,使用urllib,pycurl构造 curl 命令并将其传递给或使用;subprocess.check_output()发送请求都没有关系。jQuery.get()你仍然得到那个错误。我想知道谷歌是如何知道差异的。

于 2017-05-12T04:25:42.870 回答
1

我在 Drupal 站点上遇到了同样的问题。在谷歌云平台上启用地理编码 API 后,对我有用。在我的设置中,我需要两个 API,Geocoding 和 Maps Javascript API。

于 2018-09-27T14:06:46.200 回答
1

如果遇到类似地理编码访问被拒绝的错误:因此您可以从 getKey 帐户启用地理编码 api 服务。在此处输入图像描述

于 2019-06-28T08:06:53.623 回答
1

有同样的问题,为我的项目启用了 API,但没有为我使用的特定 API 密钥启用。

您应该可以在此处看到您的 API 密钥:https ://console.cloud.google.com/apis/credentials

然后单击您正在使用的密钥并为此启用 API。对我来说,更改需要大约 5 分钟才能生效。

于 2019-09-11T16:30:12.060 回答
1

这可能会在将来对某人有所帮助,这就是添加此答案的原因。

在我的 android studio 项目案例中。我还必须启用 Places API 才能获得建议

这对我有用。

于 2020-12-05T20:33:35.520 回答
0

Places APIPlaces SDK for Android是两个不同的 API。Android 开发人员启用了它们。这对我有用!

无需启用具有不同用途的地理编码和地理定位 API。

于 2019-06-12T10:48:26.933 回答
0

对于 Angular 开发人员:

当我需要使用agm-direction 包时,控制台显示“你必须先有一个凭证密钥,请到这里”,但我已经有一个,所以我可以查看谷歌地图。

过了一会儿,我发现您唯一需要做的就是转到Direction API并启用它,然后等待大约 10 秒,您就可以开始了。整件事总结起来,控制台日志并没有准确地说明需要什么 API。

于 2019-10-05T08:54:58.530 回答
0

{ "error_message" : "This API project is not authorized to use this API. Please ensure that this API is activated in the APIs Console: Learn more: https://code.google.com/apis/console", "results" : [], "status" : "REQUEST_DENIED" }

启用方向 API使我修复了此错误

https://console.developers.google.com/apis/library/directions-backend.googleapis.com

https://console.developers.google.com/apis/library/directions-backend.googleapis.com

于 2020-07-20T01:06:04.420 回答
0

也可以使用 Cloud SDK 启用 API。https://developers.google.com/maps/documentation/geocoding/cloud-setup#enabling_apis

gcloud services enable \
    --project "PROJECT" \
    "geocoding-backend.googleapis.com"

https://cloud.google.com/sdk/gcloud/reference/services/enable

于 2021-10-25T17:53:41.097 回答