Получение ошибки при публикации изображения с использованием FHSTwitterEngine
В моем приложении я интегрировал FHSTwitterEngine для публикации изображений в твиттере. До прошлой недели все работало нормально. Но вдруг, при попытке опубликовать изображение показывает 204 Ошибка
Domain=FHSErrorDomain Code=204 "Запрос не вернул никакого содержимого."
Я не думаю, что это проблема с повторяющимся сообщением, потому что изображение будет меняться в зависимости от выбора пользователя, и при попытке опубликовать изображение в первый раз оно выдает ошибку.
Текстовые твиты работают правильно. проблема только с размещением изображения
код, который я использую
dispatch_async(GCDBackgroundThread, ^{
@autoreleasepool {
NSError *returnCode = [[FHSTwitterEngine sharedEngine]postTweet:self.textToTweet withImageData:UIImagePNGRepresentation(tweetImg)];
NSString *title = nil;
NSString *message = nil;
if (returnCode) {
NSLog("Error-->%d",returnCode.code);
} else {
title = @"Tweet Posted";
message = @"Successfully";
}
}
});
заранее спасибо
4 ответа
Это искаженная проблема данных из нескольких частей.
Взгляните на FHSTwitterEngine.m.
Ищите эти строки
- (NSError *)sendPOSTRequestForURL:(NSURL *)url andParams:(NSDictionary *)params
...
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n",key] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:data];
Добавьте эти строки под ним
if ([obj isKindOfClass:[NSData class]]) {
[body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
}
Я также заметил, что в нем отсутствует ошибка параметров состояния.
Ищу
- (NSError *)postTweet:(NSString *)tweetString withImageData:(NSData *)theData inReplyTo:(NSString *)irt {
...
NSMutableDictionary *params = [NSMutableDictionary dictionary];
params[@"media[]"] = theData;
И добавь это
params[@"status"] = tweetString;
Или вы можете получить исправления здесь: https://github.com/alvani/FHSTwitterEngine/blob/master/FHSTwitterEngine/FHSTwitterEngine.m
Благодарю.
Я не смог разместить изображение в Twitter, но теперь, используя этот код, я могу опубликовать данные с изображением в Twitter.
https://github.com/alvani/FHSTwitterEngine
Просто замените ваш FHSTwitterEngine на эту библиотеку.
его просто добавили некоторые изменения или ошибки в библиотеке
Сжать существующее изображение, используя этот код...
NSData *data = UIImageJPEGRepresentation(imageView.image, 0.6);