Api评论视频
我试图通过youtube api对YouTube视频发表评论。 我必须将一些XML发送到他们的服务器,但是当我这样做时,它不会给我带来任何回报,也不会在视频中发表评论。
下面是api文档的链接!
POST / feeds / api / videos / VIDEO_ID / comments HTTP / 1.1
主持人:gdata.youtube.com
Content-Type:application / atom + xml
内容长度:CONTENT_LENGTH
授权:持票人ACCESS_TOKEN
GData-Version:2
X-GData-Key:key = DEVELOPER_KEY
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:yt="http://gdata.youtube.com/schemas/2007">
<content>This is a crazy video.</content>
</entry>
我非常感谢你的帮助,因为我坚持了这几天。 谢谢!
这里是我的代码:NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
NSString *requestString = [NSString stringWithFormat:@"<?xml version="1.0" encoding="UTF-8"?><entry xmlns="http://www.w3.org/2005/Atom"xmlns:yt="http://gdata.youtube.com/schemas/2007"><content>%@</content></entry>", [textField text]];
NSData *postData = [requestString dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:@"https://gdata.youtube.com/feeds/api/videos/4NE7Nmmt0R4/comments"]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/atom+xml" forHTTPHeaderField:@"Content-Type"];
[request setValue:[NSString stringWithFormat:@"key=%@", [defaults objectForKey:@"accessToken"]] forHTTPHeaderField:@"Authorization"];
[request setValue:@"key=AI39si4apF3QyQkXbH_C5IHIClkyP2mio2QJ3JBUUpvPbO2rhch7tpYjMavZgt5QzGaGrHBfom5mNpoUq_ZLRPPa35KO21O9Pw" forHTTPHeaderField:@"X-GData-Key"];
[request setValue:@"2" forHTTPHeaderField:@"GData-Version"];
[request setHTTPBody:postData];
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];
[conn start];
无论何时发出HTTP请求,YouTube API都将始终发送HTTP响应。 即使您发出完全无效的HTTP请求,您也会收到HTTP错误响应。 请仔细检查,看看你是否得到任何回应。 如果你确实没有,那么我的猜测是你实际上并没有完成你的HTTP请求 - 可能是因为某些网络问题,它从来没有将它发送到API服务器,或者你没有正确计算CONTENT_LENGTH
(假设你的'试图用手计算)。
另外,如果你还没有,我建议使用GData Objective-C客户端库。
链接地址: http://www.djcxy.com/p/48869.html