Я пытаюсь попасть в конечную точку media/upload
, чтобы загрузить изображение в твиттер. Я подписываю запрос с классом PFTwitterUtils
Parse.com. Проводка твит к statuses/update
работает отлично, но media/upload
конечная точка продолжает возвращаться ошибка аутентификации:Как добавить медиа в Tweet, используя Parse.com и PFTwitterUtils?
{
"errors": [
{
"message": "Could not authenticate you.",
"code": 32
}
]
}
Я удостоверился, что у меня есть действительный маркер OAuth для пользователя и данные, переданные в теле POST кодируется Base64.
Вот мой код:
NSURL *url = [NSURL URLWithString:@"https://upload.twitter.com/1.1/media/upload.json"];
NSData *imageData = UIImageJPEGRepresentation(imageToUpload, 1.0);
NSString *postString = [NSString stringWithFormat:@"media=%@", [[imageData base64EncodedStringWithOptions:kNilOptions] stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]]];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
request.HTTPBody = [postString dataUsingEncoding:NSUTF8StringEncoding];
[request setHTTPMethod:@"POST"];
[[PFTwitterUtils twitter] signRequest:request];
NSLog(@"Sending twitter request...");
[NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc] init] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
NSLog(@"Got twitter response");
NSLog(@"Response: %@", response);
NSError *jsonSerializationError;
NSDictionary *mediaDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&jsonSerializationError];
}];
Не работает для меня, я преобразовал его быстрым и я не думаю, что я сделал ошибки :( –
You должен задать новый вопрос, может быть, Parse и Twitter изменили свои API-интерфейсы? – JAL
Спасибо за ответ, я продолжал делать это, но не перед тем, как попробовать снова с новым умом. Он действительно работал, но я не знал, что вам нужно использовать изображение в статусе, чтобы увидеть его в твиттере, и я ошибочно печатал ответ вместо данных. –