2013-09-30 4 views
0

В моем приложении i встроен FHSTwitterEngine для размещения изображений в твиттере. До последней недели она работает нормально. Но внезапно, при попытке отправить изображение, он показывает 204 ОшибкаОшибка при отправке изображения с помощью FHSTwitterEngine

Домен = 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"; 
     } 
    } 
}); 

Заранее спасибо

ответ

1

Это уродливая многочастная проблема данных формы.

Посмотрите на 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]]; 
} 

Я также заметил, что он отсутствует статус Params ошибка.
Посмотрите на

- (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

Спасибо.

+0

Спасибо @ альфа2. Проблема с отправкой изображений была решена, но теперь, когда я пытаюсь опубликовать одно и то же изображение снова и снова, он просто отправляет изображение вместо того, чтобы показывать повторяющуюся ошибку сообщения, а также некоторое время, когда он дает код ошибки -1001. – kumar

+0

hello @ alpha2 Я используя этот обновленный код для публикации строки в твиттере, но я получаю ту же ошибку ** Domain = FHSErrorDomain Code = 204 «Запрос не возвратил никакого содержимого». ** –

+0

Привет @ alpha2, Что такое obj in [** obj * * isKindOfClass: [класс NSData]]? – arunit21

0

Я не смог опубликовать изображение на Twitter, но, используя этот код, теперь я могу размещать данные с изображением в твиттере.

https://github.com/alvani/FHSTwitterEngine 

Просто замените ваш FHSTwitterEngine этой библиотекой.

его просто добавили некоторые изменения или ошибки в библиотеке

0

сжать существующий файл, используя этот код ...

NSData *data = UIImageJPEGRepresentation(imageView.image, 0.6); 
+0

Спасибо @smit shah – kumar

+0

u r welcome @kumar –

0

Вам нужно разместить длину строки ниже, а затем 130 символов

Смежные вопросы