GData API今天显示了与昨天不同的行为。
我在我的iOS应用程序中获取了几个播放列表,如下所示:
[[self youTubeService] fetchFeedWithURL:[[playlistLink content] sourceURL]
delegate:self
didFinishSelector:@selector(playlistTicket:finishedWithFeed:error:)];
在我的回调中
- (void)playlistTicket:(GDataServiceTicket *)ticket finishedWithFeed:(GDataFeedYouTubePlaylist *)feed error:(NSError *)error {
if(!error){
_receivedPlaylistFeeds += 1;
NSMutableDictionary* sectionDict = [[NSMutableDictionary alloc] init];
NSMutableArray* sectionEntries = [[NSMutableArray alloc] init];
for(GDataEntryYouTubeVideo* entry in feed.entries){
GDataYouTubeMediaGroup* mediaGroup = [entry mediaGroup];
GDataMediaKeywords* mediaKeywords = [mediaGroup mediaKeywords];
NSArray* keyword = [mediaKeywords keywords];
}
}}
关键字为零。昨天不是。我依赖那些关键词,不知道可能出了什么问题。我在浏览器中检查了[[playlistLink content]sourceURL],它加载了包含关键字的xml。所以我不知道是什么导致了行为的改变。对我来说,这很关键。应用程序已在AppStore中发布。。。
media:如果用户不是视频的所有者,则关键字返回为空。
http://apiblog.youtube.com/2012/08/video-tags-just-for-uploaders.html
编辑:请参阅下面我对我如何处理它的评论
我也依赖关键字。。。在我不知情的情况下,我的网页崩溃了两天
您仍然可以访问视频的关键字。当你设置你的YouTube请求设置时。。。您需要提供用户名和密码来验证您是所有者。
https://developers.google.com/youtube/2.0/developers_guide_protocol#Authentication
或
https://developers.google.com/youtube/code,然后导航到代码的"身份验证"部分。
我的页面现在正在工作,因为我包含了两个额外的参数。