【问题标题】:This API project is not authorized to use this API. Please ensure that this API is activated in the APIs Console此 API 项目无权使用此 API。请确保在 API 控制台中激活了此 API
【发布时间】:2016-01-04 19:50:41
【问题描述】:

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

我明白了:

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

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

【问题讨论】:

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

标签: google-maps google-maps-api-3 geocoding google-geolocation


【解决方案1】:

从你发布的图片来看,它说它被禁用了......

转到Developer Console

导航到Google Maps -> APIs

搜索 Geocoding 并点击 Google Maps Geocoding API -> Enable API。为地理定位做同样的事情

【讨论】:

  • 我理解你为什么这么想,但是当它启用时,谷歌会给你一个禁用按钮,这正是你在那里看到的。
  • '从你发布的图片来看,它说它已被禁用'。不,它没有。那将是禁用它的链接。意思是说它实际上已启用。
  • 我启用了“Google Maps Geocoding API”和“Google Maps Geolocation API”,但我仍然无法找到任何地方。我从中获取数据的 URL 是 maps.googleapis.com/maps/api/place/search/…
  • 另外你需要为地点自动建议启用places api
  • 另外,添加Embed API
【解决方案2】:

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

Google Places API 网络服务

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

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

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

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

【讨论】:

  • 这是 Google 评论 FYI 的正确答案。请注意,可能发生的另一件事是,如果您拥有 2016 年 6 月之前的帐户,则这些域可能不需要此帐户。我遇到了这个问题,需要新问题的密钥。
  • 它现在可以很好地与 Google Places API Web 服务一起使用,非常感谢!!
【解决方案3】:

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

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

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

【讨论】:

    【解决方案4】:

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

    【讨论】:

    • 但我每次都需要这样做
    • 真的吗?这实际上解决了我的问题。打开和关闭它似乎总是解决办法,谢谢
    • 非常正确。这一切都显示了启用的 API 服务,但没有一个。您必须单击每个服务,然后启用它。这实际上更有意义,但信息没有帮助。
    • 为我工作。 2019 年 12 月,这仍然是一个问题
    • 这对我有用。到 2020 年 9 月,这仍然是一个问题。
    【解决方案5】:

    以下是对我有用的步骤:

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

    【讨论】:

      【解决方案6】:

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

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

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

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

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

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

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

      • 地理编码 API
      • 地理位置 API
      • 地图 JavaScript API
      • Places API

      【讨论】:

        【解决方案7】:

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

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

        Google Places API 网络服务 谷歌地图地理编码 API

        【讨论】:

          【解决方案8】:

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

          Error messages | Google Map JavaScript API

          【讨论】:

          • 如果您的计费功能被禁用,您会收到另一条错误消息。
          【解决方案9】:

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

          Google Cloud Console

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

          【讨论】:

            【解决方案10】:

            您需要通过链接启用 API:

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

            【讨论】:

              【解决方案11】:

              您忘记在Developer console 中启用您的服务。

              【讨论】:

                【解决方案12】:

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

                【讨论】:

                  【解决方案13】:

                  从网页发送带有axiosget 请求,我还需要(最后)启用Geocoding API

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

                  感谢these guys

                  【讨论】:

                    【解决方案14】:

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

                    • 请检查凭据中的API限制
                    • “不限制键”“限制键” 2 个选项。

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

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

                    【讨论】:

                      【解决方案15】:

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

                      【讨论】:

                        【解决方案16】:

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

                        【讨论】:

                          【解决方案17】:

                          如果遇到类似地理编码访问被拒绝的错误:那么您可以从 getKey 帐户启用地理编码 API 服务。enter image description here

                          【讨论】:

                            【解决方案18】:

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

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

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

                            【讨论】:

                              【解决方案19】:

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

                              在我的 android studio 项目案例中。 我必须启用 Places API 也可以获取建议

                              这对我有用。

                              【讨论】:

                                【解决方案20】:

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

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

                                【讨论】:

                                  【解决方案21】:

                                  对于 Angular 开发人员:

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

                                  过了一会儿,我发现你唯一需要做的就是去Direction API并启用它,然后等待大约10s,你很好。整件事总结起来,控制台日志并没有准确说明需要什么 API。

                                  【讨论】:

                                    【解决方案22】:

                                    { "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" }

                                    启用 Directions API 让我修复了这个错误

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

                                    【讨论】:

                                      【解决方案23】:

                                      还可以使用 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

                                      【讨论】:

                                        猜你喜欢
                                        • 1970-01-01
                                        • 2016-02-22
                                        • 1970-01-01
                                        • 1970-01-01
                                        • 2019-03-03
                                        • 2016-10-29
                                        • 2014-04-13
                                        • 2019-05-21
                                        • 1970-01-01
                                        相关资源
                                        最近更新 更多