Я видел пару сообщений об этой проблеме, но пока ничего не помогло. По сути, я пишу приложение для iOS и пытаюсь опубликовать фотографию в альбоме Facebook с помощью Graph API. Данные изображения сначала загружаются с сервера, а затем отправляются в Facebook. Я использую класс ASIFormDataRequest и URL https://graph.facebook.com/MY_ALBUM_ID/photos , но постоянно получаю следующую ошибку:
error = {
message = "(#1) An unknown error occurred";
type = OAuthException;
};
Мой запрос выглядит следующим образом:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:url]];
self.photoRequest = request;
[request setDelegate:self];
[request setPostValue:token forKey:@"access_token"];
[request setPostValue:message forKey:@"message"];
[request setTimeOutSeconds:240];
[request setRequestMethod:@"POST"];
UIImage *image = [UIImage imageWithData:data];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData *imageData = UIImageJPEGRepresentation(image, 0.8);
[request setData:imageData forKey:@"source"];
dispatch_async(dispatch_get_main_queue(), ^{
[request startAsynchronous];
});
});
Странно то, что я использую тот же метод для загрузки фотографий на свой сервер для другой части приложения, и все работает нормально. Я даже загрузил фотографию, которую пытаюсь отправить в Facebook, на свой сервер, чтобы проверить правильность отправки данных. Все получилось хорошо.
Я читал, что Facebook иногда может выдать ошибку, которую я вижу, если у него проблемы с форматом изображения, но сама по себе ошибка довольно туманная. Я знаю, что мой access_token действителен. Все остальные запросы, которые я делаю в Facebook, работают нормально.
Есть мысли?