Я пытаюсь загрузить jpg-изображение в твиттер. Я могу загрузить @ "icon.png" столько раз, сколько хочу, но, похоже, не могу загрузить jpg. Я всегда получаю ошибку 403 от твиттера. Это мой код:Загрузить JPG-изображение в Twitter
ACAccount *twitterAccount = [arrayOfAccounts objectAtIndex:0];
UIImage *image =[UIImage imageNamed:file]; //file is the name of a jpg image. If replaced with @"icon.png" the upload works
TWRequest *postRequest = [[TWRequest alloc] initWithURL:[NSURL URLWithString:@"https://upload.twitter.com/1/statuses/update_with_media.json"]
parameters:[NSDictionary dictionaryWithObject:@"Hello. This is a tweet." forKey:@"status"] requestMethod:TWRequestMethodPOST];
[postRequest addMultiPartData:UIImagePNGRepresentation(image) withName:@"media" type:@"multipart/png"]; //I've tried this with UIImageJPEGRepresentation(image, 80) and multipart/jpg and jpeg to no avail
// Set the account used to post the tweet.
[postRequest setAccount:twitterAccount];
[postRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
{
NSLog(@"Twitter response, HTTP response: %i", [urlResponse statusCode]);
}];
Помогите!
Если я использую ниже это работает
UIImage *image =[UIImage imageNamed:@"background.png"]; //This file is copied to the device when the app is built.
Но, если я использую это не работает, хотя я подтвердил, что этот путь и имя файла делает нетронутым подтяните изображение
UIImage *image =[UIImage imageNamed:[NSString stringWithFormat:@"%@/%@", dir, file]];
Что я делаю неправильно? Благодаря
/// РЕШЕНИЕ Я могу быть идиотом, пожалуйста, не распинают меня, но вот то, что мне нужно изменить UIImage к
UIImage *image = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@", dir, file]];
Это позволяет как PNG и JPG, чтобы загрузить без вопрос. Глупая ошибка, но, по крайней мере, сейчас она работает. Спасибо за ответы!
Проверьте свой 'twitterAccount', потому что ошибка' 403' является ошибкой аутентификации. – Shahzeb
Да, я имею, он установлен как для чтения, так и для записи. Приложению также разрешен доступ. Как я уже говорил, я могу загрузить значок.png без проблем. Как только я попытаюсь загрузить jpg, формат файла, который мне нужен, он возвращает 403. Очень расстраивает! Спасибо за быстрый ответ! Кстати, возвращение я получаю png 200. Я только что подтвердил это снова, но загрузил еще один png. – mejim707
Для jpg вы передаете imageNamed только имя файла, или вы также добавляете расширение .jpg? – Abizern