iOS 应用上的 Youtube API v3。我的 API 密钥不起作用,但其他人的密钥在同一个应用程序上工作。错误 403

Posted

技术标签:

【中文标题】iOS 应用上的 Youtube API v3。我的 API 密钥不起作用,但其他人的密钥在同一个应用程序上工作。错误 403【英文标题】:Youtube API v3 on iOS app. My API key does not work, but somebody else's key does work on same application. Error 403 【发布时间】:2014-01-16 22:28:10 【问题描述】:

这对于 Google 的 Youtube 团队来说可能是一个直接的问题,但我想先在这里问一下,以防它将来也对其他人有所帮助。

我在 ios 应用程序上使用简单的 API 密钥(没有 OAuth 2.0)。此应用程序只是从特定播放列表 id 返回视频 id 列表。我也提供播放列表 ID。

当我使用从 youtube/google 控制台收到的 API 密钥时,我在调用 playlistItems 请求时收到错误 403。 当使用别人的密钥时(我实际上在网上找到了一个例子),应用程序可以工作。 我真正改变的只是 API 密钥。我没有更改部件或播放列表 ID,在这两种情况下我都使用相同的 iOS 应用程序。

我的密钥在谷歌云控制台中启用了 YouTube 数据 API v3 和 YouTube 分析 API,以及在谷歌云控制台中随此应用程序启用的其他默认元素。

虽然这种方法有效,但我不想为从我的应用程序发出的请求向其他人的 API 密钥收费,而且我还想从我的 iOS 应用程序获取 API 请求的统计信息。

有什么建议吗? 有没有人遇到过这种情况?

谢谢。

【问题讨论】:

尝试 1. 打开和关闭 API 2. 创建一个新项目。我不确定这里发生了什么,但我想消除项目处于某种楔入状态的可能性。 感谢您的评论和帮助。我尝试了选项 1 几天但没有成功。我的 iOS 包中有一个破折号,所以我用另一个包 ID 重新制作了应用程序,以防万一,并在谷歌控制台中重新制作了项目(因此在控制台中重新创建了项目),现在它工作正常。我不认为我将此问题标记为已关闭,因为您的答案似乎被列为评论而不是答案。 实际上,我的 API 密钥今天决定再次失效。奇怪的是它昨天还在工作,今天早上它决定不授权我。回到第一格... 【参考方案1】:

控制台上的捆绑包 ID 存在一个已知问题。目前,请不要使用 bundle id,您的应用应该可以正常运行。

您可以在公共问题跟踪器中跟踪问题,并在问题修复后将 bundleid 放回原处。 https://code.google.com/p/gdata-issues/issues/detail?id=5770

【讨论】:

好吧,酷。我今天刚刚在没有捆绑 ID 的情况下对其进行了测试,它似乎工作正常。以这种方式发布应用程序有什么缺点吗? 一点也不。因为您可以稍后从谷歌控制台添加捆绑 ID。 愚蠢但显而易见的问题。如果我以后不再包含捆绑 ID 怎么办?

以上是关于iOS 应用上的 Youtube API v3。我的 API 密钥不起作用,但其他人的密钥在同一个应用程序上工作。错误 403的主要内容,如果未能解决你的问题,请参考以下文章

如何使用YouTube API V3?

如何使用 YouTube API V3?

IIS Web 服务器上的 Youtube 数据 API V3 PHP 无法正常工作

Youtube V3 API 配额使用协助

Youtube v3 API 字幕下载

在客户端应用程序中保护 YouTube v3 API 密钥