如何在我的 iOS 应用中使用 YouTube 数据 API?我在每个请求上收到“访问未配置”错误

问题描述 投票:0回答:2

我想使用 YouTube 数据 API 获取 iOS 应用程序中特定 YouTube 视频的缩略图链接。我转到 Google Developers Console 并创建了一个新项目。

对于该项目,我转到“API”并删除了它为我启用的默认 API,并添加了 YouTube 数据 API。然后,我转到凭据,创建了一个 iOS 公钥(因为我不需要用户登录或执行任何操作,只需获取缩略图 URL),这给了我一个 API 密钥。我在“允许的应用程序”下添加了项目的捆绑包标识符。

现在在我的应用程序中我尝试了以下代码:

let test = NSURLSession.sharedSession().dataTaskWithURL(NSURL(string: "https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=*MYKEYHERE*&part=snippet,contentDetails,statistics,status")!, completionHandler: { (data, response, error) -> Void in
    let json = NSJSONSerialization.JSONObjectWithData(data, options: nil, error: nil)
    println("JSON: \(json)")
})

但它打印出错误:

JSON: Optional({
    error =     {
        code = 403;
        errors =         (
                        {
                domain = usageLimits;
                message = "Access Not Configured. Please use Google Developers Console to activate the API for your project.";
                reason = accessNotConfigured;
            }
        );
        message = "Access Not Configured. Please use Google Developers Console to activate the API for your project.";
    };
})

我到底做错了什么?

ios objective-c cocoa-touch youtube youtube-api
2个回答
1
投票

控制台中存在有关 Bundle id 的已知问题。如果您可以删除该限制,它应该可以正常工作。

您可以从此处跟踪原始问题:https://code.google.com/p/gdata-issues/issues/detail?id=5770


1
投票

这就是您所需要的,YouTube 有一个通过网络的服务 API 来咨询此类事情。我使用此 URL 来查询用户的所有视频(获取每个视频:URL、缩略图、观看次数、持续时间等)。我确信您会找到特定视频的缩略图。它是一个 JSON 响应,因此您必须仔细查看结构,但没有比这更简单的了。

http://gdata.youtube.com/feeds/api/users/USER_NAME/uploads?v=2&alt=json&@&start-index=1&max-results=10

© www.soinside.com 2019 - 2024. All rights reserved.