Tôi đang cố tải lên video bằng mã mẫu của api youtube. Khi tôi nhấn nút tải lên, thanh tiến trình kết thúc quá trình của nó, nhưng một khi nó đạt đến điểm kết thúc tôi sẽ gặp lỗi. Lỗi mô tả như sau:Xác thực API Youtube - Iphone
YouTubeTest [2149: f803]. Lỗi - Lỗi miền = com.google.GDataServiceDomain Mã = 400 "Các hoạt động có thể không được hoàn thành (com.google.GDataServiceDomain lỗi 400 .)" UserInfo = 0x69d5bd0 {}
Đây là mã cho nút tải lên ép
- (IBAction)uploadPressed:(id)sender {
[self.view resignFirstResponder];
NSString *devKey = [mDeveloperKeyField text];
GDataServiceGoogleYouTube *service = [self youTubeService];
[service setYouTubeDeveloperKey:devKey];
NSString *username = [mUsernameField text];
NSString *clientID = [mClientIDField text];
NSURL *url = [GDataServiceGoogleYouTube youTubeUploadURLForUserID:username
clientID:clientID];
// load the file data
NSString *path = [[NSBundle mainBundle] pathForResource:@"YouTubeTest" ofType:@"m4v"];
NSData *data = [NSData dataWithContentsOfFile:path];
NSString *filename = [path lastPathComponent];
// gather all the metadata needed for the mediaGroup
NSString *titleStr = [mTitleField text];
GDataMediaTitle *title = [GDataMediaTitle textConstructWithString:titleStr];
NSString *categoryStr = [mCategoryField text];
GDataMediaCategory *category = [GDataMediaCategory mediaCategoryWithString:categoryStr];
[category setScheme:kGDataSchemeYouTubeCategory];
NSString *descStr = [mDescriptionField text];
GDataMediaDescription *desc = [GDataMediaDescription textConstructWithString:descStr];
NSString *keywordsStr = [mKeywordsField text];
GDataMediaKeywords *keywords = [GDataMediaKeywords keywordsWithString:keywordsStr];
BOOL isPrivate = mIsPrivate;
GDataYouTubeMediaGroup *mediaGroup = [GDataYouTubeMediaGroup mediaGroup];
[mediaGroup setMediaTitle:title];
[mediaGroup setMediaDescription:desc];
[mediaGroup addMediaCategory:category];
[mediaGroup setMediaKeywords:keywords];
[mediaGroup setIsPrivate:isPrivate];
NSString *mimeType = [GDataUtilities MIMETypeForFileAtPath:path
defaultMIMEType:@"video/mp4"];
// create the upload entry with the mediaGroup and the file data
GDataEntryYouTubeUpload *entry;
entry = [GDataEntryYouTubeUpload uploadEntryWithMediaGroup:mediaGroup
data:data
MIMEType:mimeType
slug:filename];
SEL progressSel = @selector(ticket:hasDeliveredByteCount:ofTotalByteCount:);
[service setServiceUploadProgressSelector:progressSel];
GDataServiceTicket *ticket;
ticket = [service fetchEntryByInsertingEntry:entry
forFeedURL:url
delegate:self
didFinishSelector:@selector(uploadTicket:finishedWithEntry:error:)];
[self setUploadTicket:ticket];
}
tôi đã thiết lập khóa nhà phát triển và khách hàng trọng điểm một cách chính xác từ API Bảng điều khiển.
Tôi đang chạy tính năng này trên trình mô phỏng. Có phải chúng tôi không thể tải lên video từ trình mô phỏng không?
Vui lòng hướng dẫn tôi tôi đang gặp sự cố ở đâu?
Lỗi 400 thường có nghĩa là yêu cầu không hợp lệ. Tôi sẽ kiểm tra tất cả các mã của bạn, xác thực đăng nhập và nếu có thể, thử nghiệm trên thiết bị để loại trừ bất kỳ vấn đề có thể xảy ra mà trình mô phỏng có thể gây ra. – Luke
@Luke Tôi đã kiểm tra trên thiết bị. Nó không làm việc ở đó hoặc là .. Cho cùng một lỗi: ( – innodeasapps
Bạn có bất kỳ mã mẫu hoặc liên kết sau đó xin vui lòng chia sẻ.Tôi có mẫu cho MAC OS X nhưng bot cho iOS. – Imran