出现错误 403:未配置访问。请使用 Google Developers Console 为您的项目激活 API
Posted
技术标签:
【中文标题】出现错误 403:未配置访问。请使用 Google Developers Console 为您的项目激活 API【英文标题】:Getting Error 403: Access Not Configured. Please use Google Developers Console to activate the API for your project 【发布时间】:2014-05-17 04:43:46 【问题描述】:我正在尝试使用 Youtube API 从特定频道中提取所有视频。我在 Google Developers Console 中设置了项目并获得了 API 浏览器密钥。我启用了 YouTube Data API v3,为了安全起见,我启用了 YouTube Analytics API。
我不知道我收到了这个错误。谁能帮帮我。
"error":
"errors": [
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
],
"code": 403,
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
我正在使用的代码。它还没有做任何事情,只是尝试获取数据。
jQuery.getJSON('https://www.googleapis.com/youtube/v3/channels?part=UncleBens&id=UncleBens&key=AIzaSyDXD80S1mFHH2HSZFxLemkae-_Cl_nY5Xk', function(data)
console.log(data);
for(var i=0; i<data.data.items.length; i++)
console.log(data.data.items[i].title); // title
console.log(data.data.items[i].description); // description
);
【问题讨论】:
你能贴一些代码吗? 必须启用 API。 console.developers.google.com/apis/api/customsearch/overview 会有一个“启用 API”按钮。 (对于新用户) 【参考方案1】:尝试在Google Developers Console 中为您的项目将“引用者”设置为“允许的任何引用者”(只需将该字段留空),如果它还不是这样的话。
为此,请转到您的 Google Developers Console 并打开 API & Auth / Credentials 并点击“编辑允许的引用者”清空输入字段。
【讨论】:
这行得通,但我不明白为什么。你能解释一下为什么会这样吗?是不是因为呼叫来自用户,而不是拥有域名的服务器? 我认为它可以作为一个白名单,任何不在它上面的东西都会被屏蔽。另外我会创建一个新密钥并删除这个密钥,因为其他人可能会用完你的配额。 它对我有用。但我们必须记住将我们的 API 密钥保密。 我找不到“编辑允许的推荐人”这个选项。尝试找到此链接大约需要一个小时,或者任何可能相关的东西,但都是徒劳的。 这个不是正确答案。问题是控制台中没有启用 API。 Omer Aslam 的答案是正确的。【参考方案2】:您必须启用几个 API(在新的 google 控制台中)才能按预期工作。
转到https://console.developers.google.com 并确保在“API”下启用了以下 API:
-
“联系人 API”
“Google+ API”
【讨论】:
我在使用 Google Play 服务来实现 Web 平台的隐藏功能时遇到了麻烦。我一直收到这个 403 错误。启用这 2 个 API 并启用“Google Play 游戏服务”和“Google Play 游戏管理”似乎解决了我的问题。 这也适用于普通的 OAuth2 身份验证,即仅使用 Google 帐户登录,而不是访问任何其他服务。 这对我有用,但没有任何意义,因为我试图从一个特殊的频道获取“视频上传”。 如果您在 Web 而不是服务器应用程序类型中有错误,这是正确的答案。 @Gsx 的答案是针对服务器一 哦,伙计,我花了 5 个小时试图解决这个问题。我什么都试过了。如果你在这里,我会给你买果汁。【参考方案3】:我遇到了同样的问题。虽然我不确定这背后的原因和逻辑,但以下步骤有效 -
1) 我将推荐人字段留空(允许任何推荐人)。但是,仅此一项是行不通的。 2)我重新生成了浏览器密钥。成功了。
希望这会有所帮助。
【讨论】:
【参考方案4】:我遇到了同样的问题。我尝试清空推荐列表,但这并没有解决问题。然后我重新生成了密钥。新密钥给出了“过期密钥”错误。所以我恢复到过时的密钥,现在可以工作了。
【讨论】:
【参考方案5】:我遇到了同样的问题,对我有用的是使用“服务器密钥”而不是“浏览器密钥”。不知道为什么这很重要,因为我在这两种情况下都是从浏览器发出请求的,但它有效:)
【讨论】:
【参考方案6】:为您的项目将“推荐人”设置为“允许的任何推荐人”(只需将该字段留空)
去你的控制台 (https://console.developers.google.com/project) 并打开 Api & auth >> Credentials 并单击“编辑允许的引用者”下清空输入字段。硬刷新查询
工作正常。
【讨论】:
【参考方案7】:确保为您的项目启用了“Youtube Data API V3”。您可以在“APIs & Auth”->“APIs”下找到它。 此外,在为您的项目启用 Youtube 数据 API 后,请等待一分钟,然后再使用 API 密钥触发请求。
【讨论】:
【参考方案8】:今天早上我也遇到了同样的问题,但我只是想用谷歌帐户登录。我收到了同样的信息。
对我有用的是启用这两个 API: 谷歌+ API 联系人 API
在您的控制台中: https://console.developers.google.com/project/your-project-id/apiui/api
我不想清空“允许的推荐人字段”,因为我更喜欢控制人们可以从哪里登录到我的应用程序。我也不必更改我的 API 密钥。 仅作记录,我使用的是 Spring Social Google 1.1.0
【讨论】:
谢谢!这就是救了我的那个! :) 我正在使用适用于 Wordpress 的 Analytics Dashboard 插件,您建议的更改使插件正常工作:)【参考方案9】:在https://console.developers.google.com 中的 api 和身份验证凭据中,只需将密钥留给服务器应用程序编辑允许的 ips 为空,这将起作用
【讨论】:
【参考方案10】:我在使用 Google Analytics 的 Management API 时遇到了同样的问题。这对我有用:
确保在您的 API 控制台中启用了以下 API:
YouTube 数据 API v3 YouTube 分析 API 联系人 API Google+ API确保在您的应用程序中正确定义 API 所需的范围。对于 Youtube,使用访问 API 调用所需的范围 yuo
确保您的 API 控制台中 Google 项目的 CLIENT_ID 和 CLIENT_SECRET 是在您的客户端应用程序中定义的正确的。
【讨论】:
【参考方案11】:如果您使用Public API access
进行操作,则必须将您的服务器 ip 添加到允许的 IP 列表(选择项目 -> API 和身份验证 -> 凭据)。如果没有,您将收到如上的错误:“未配置访问。请使用 Google Developers Console 为您的项目激活 API。”
请查看我的附件以查看更多
【讨论】:
【参考方案12】:我遇到了同样的问题,我的问题是因为我在 project 和 Google APIs
中有不同的名称这是一个 android 示例
public MakeRequestTask(GoogleAccountCredential credential)
HttpTransport transport = AndroidHttp.newCompatibleTransport();
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance();
mService = new com.google.api.services.calendar.Calendar.Builder(
transport, jsonFactory, credential)
.setApplicationName("Google Calendar API Example")
.build();
这里的名字是“Google Calendar API Example”
Google API 中的名称是“App Example”
为了解决问题,我将项目中的名称更改为
public MakeRequestTask(GoogleAccountCredential credential)
HttpTransport transport = AndroidHttp.newCompatibleTransport();
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance();
mService = new com.google.api.services.calendar.Calendar.Builder(
transport, jsonFactory, credential)
.setApplicationName("App Example")
.build();
【讨论】:
【参考方案13】:您必须启用几个 API 才能按预期工作。
首先转到https://console.developers.google.com 并确保在“API”下您已启用 Contacts API 和 Google+ API。
完成后,您将不会再看到该错误消息。
可以找到更多-
-
https://github.com/zquestz/omniauth-google-oauth2/issues/111
https://www.joomlapolis.com/forum/6-news-and-publicity/229505-configuring-cb-connect-7x#263260
【讨论】:
【参考方案14】:好的,这已经很老了,但我为我的案例解决了这个问题,我认为这可能对其他人有所帮助。我去了oauth,它似乎解决了。
真正的问题是,如果您使用不受限制的密钥 [也许,取决于启用的 api] 是否关联了计费帐户; api应该可以工作。如果它不受限制地工作,那么您就在正确的轨道上。
一旦您将其限制为 android,它将再次使用该密钥失败,直到您签署您的应用程序。我发现最简单的方法是在 gradle 文件中为 android 下的变体使用签名配置。
signingConfigs
debug
storeFile file("/users/xxxxxxxxxx/Android/keystores/google_demos/debugandroid.jks")
storePassword "xxxxxxxxxx"
keyAlias "com.example.xxxxxxxxxx"
keyPassword "xxxxxxxx"
【讨论】:
以上是关于出现错误 403:未配置访问。请使用 Google Developers Console 为您的项目激活 API的主要内容,如果未能解决你的问题,请参考以下文章
即使似乎授予访问权限,Google Calendar API在OAuth期间也会出现403错误
Google Oauth 错误:403 access_denied 开发者未授予权限