该API项目无权使用此API。请确保已在API控制台中激活了此API


192

我有纬度和经度:"-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

我懂了 :

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

在此处输入图片说明

我现在有点卡住了。我有什么想念的吗?


2
就像说的那样,似乎是一个错误。检查是否为正确的项目(使用的密钥所属的项目,可能有多个项目)启用了API。
Dr.Molle

Answers:


387

从您发布的图片中可以看出它已被禁用...

转到开发者控制台

导航至Google Maps->APIs

搜索地理编码,然后点击Google Maps地理编码API->启用API。对地理定位执行相同的操作


14
我理解您为什么这么认为,但是启用该功能后,Google会为您提供一个禁用按钮,这正是您在此处看到的。
cyber8200

另外,如果您看一下我的启用URL:https://console.developers.google.com/project/75423435770063/apiui/apis/enabled这是我启用的API的列表
cyber8200 2015年

2
“从您发布的图片来看,它被禁用了”。不,不是。那将是一个禁用它的链接。意思是说它实际上已启用。
李李

2
我同时启用了“ Google Maps Geocoding API”和“ Google Maps Geolocation API”,但仍然无法找到任何地方。从中我是取数据的网址maps.googleapis.com/maps/api/place/search/...
iPhoneDeveloper

4
此外,您需要places为场所自动建议启用api
Moumit,

64

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

Google Places API网络服务

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

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

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

因此,您必须创建新密钥(如果有的话)或删除对现有密钥的受限访问才能使其正常工作。


这是Google评论FYI的正确答案。请注意,另一件事可能发生,如果您拥有2016年6月之前的帐户,则这些域可能不需要此帐户。我遇到了这个问题,需要新的钥匙。
Mike Q

1
现在,它可以很好地与Google Places API网络服务配合使用!
Jaggana '18

30

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

  • 路线API
  • 地理编码API
  • Maps Javascript API

我还启用了Geolocation API,但控制台未将其显示为正在使用(0个请求)。但是也许它不是实时报告,所以无论如何也不会造成损害。


23

我来晚了,但是这又是一个难题:Google将API显示为已启用,但实际上并未启用。禁用然后重新启用它。


但是我每次都需要这样做
Akshatha Srinivas

真的吗?这实际上解决了我的问题。开启和关闭它似乎总是解决问题的方法,谢谢
thatOneGuy

非常真实 都显示了已启用的API服务,但没有一个。您必须单击每个服务,然后启用它。这实际上更有意义,但该消息无济于事。
chidimo

为我工作。2019年12月,这仍然是一个问题
SomeGuyFortune

8

以下是对我有用的步骤:

  1. 启用Directions API;地理编码API;地理位置API console.cloud.google.com/google/maps-apis
  2. 启用APIS和服务以选择API console.developers.google.com/apis/library

7

在API管理器菜单中,您应该可以单击概述,在Google Maps API标题和地图图标下选择相关的API。

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

Google Places API网络服务Google Maps Geocoding API





2

如果您未启用API,但具有API密钥,则从浏览器运行API(例如在显示地图时)或将请求传递给curl命令,则不会收到该错误。仅当在代码内调用API时,才会出现该错误。在Python中,无论您使用urllibpycurl构建curl命令并将其传递给subprocess.check_output()还是使用jQuery.get(); 发送请求都没有关系。您仍然会收到该错误。我不知道Google如何知道区别。



1

我在Drupal网站上遇到了同样的问题。在Google Cloud Platform上启用Geocoding API后,对我有用。在我的设置中,我需要两个API,即地理编码和Maps Javascript API。


1

由于Google政策已更新,因此您需要启用结算功能才能访问Map API。



1

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

您应该可以在这里查看您的API密钥:https : //console.cloud.google.com/apis/credentials

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


0

Android的Places APIPlaces SDK是两个不同的API。Android开发人员同时启用了这两个功能。

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


0

对于Angular开发人员:

当我需要使用agm-direction软件包时,控制台会显示“您必须首先具有凭证密钥,请转到此处 ”,但是我已经有一个,因此可以查看google map。

稍后,我发现您唯一需要做的就是转到Direction API并启用它,然后等待大约10秒钟,一切就很好了。整个过程总结为,控制台日志并未明确说明需要什么API。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.