如何在iOS应用中使用YouTube Data API?我得到了#34;访问未配置"每个请求都有错误

时间:2014-11-03 21:05:21

标签: ios api cocoa-touch youtube youtube-api

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

对于那个项目,我然后去了#34; API"并删除了它为我启用的默认API并添加了YouTube Data API。然后我去了凭据,创建了一个公钥(因为我不需要用户登录或任何东西,只是获取缩略图URL)作为iOS,这给了我一个API密钥。我在Allowed Applications下为我的项目添加了Bundle Identifier。

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

    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.";
    };
})

我究竟做错了什么?

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

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

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