iOS YouTube“未选择过滤器”

时间:2013-08-06 23:24:41

标签: ios objective-c youtube

我正在尝试使用YouTube iOS SDK请求playListItems。

我收到了错误......

Error Domain=com.google.GTLJSONRPCErrorDomain
Code=-32602 "The operation couldn’t be completed. (No filter selected.)" 
UserInfo=0x1568f1e0
{
    error=No filter selected.,
    GTLStructuredError=GTLErrorObject 0x1567fdf0: {message:"No filter selected." code:-32602 data:[1]},
    NSLocalizedFailureReason=(No filter selected.)
}

我正在使用的查询是......

GTLServiceYouTube *service = [[GTLServiceYouTube alloc] init];

service.APIKey = @"my key";

// I suspect the problem is here...
GTLQueryYouTube *query = [GTLQueryYouTube queryForPlaylistItemsListWithPart:@"contentDetails"];
query.q = @"playlistId=<The playlist ID>";

GTLServiceTicket *ticket = [service executeQuery:query
                               completionHandler:^(GTLServiceTicket *ticket, id object, NSError *error) {
                                   if (!error) {
                                       GTLYouTubePlaylistItemListResponse *playlistItems = object;

                                       for (GTLYouTubePlaylistItem *playlistItem in playlistItems) {
                                           GTLYouTubePlaylistItemContentDetails *details = playlistItem.contentDetails;

                                           NSLog(@"PlaylistItem video ID = %@", details.videoId);
                                       }
                                   } else {
                                       NSLog(@"%@", error);
                                   }
                               }];

问题是整个API的文档都没用,所以没有使用它的例子。我不得不从Google Shopping apis的例子中把它放在一起。

大多数猜测工作来自here

我应该在query.q值中添加什么想法?或者,如果还有其他的东西我不知道?

1 个答案:

答案 0 :(得分:1)

好的,我终于找到了一个关于这个链接的链接。

要使用的代码是......

query.playlistId = @"the playlist ID";

然后一切正常:D