Ошибка какао 256 при получении данных с веб-сервера в Objective C - PullRequest
0 голосов
/ 29 ноября 2011

У меня есть приложение, в котором я отправляю данные изображения на сервер через ftp и получаю обратно в режиме предварительного просмотра.Теперь я могу отправить изображение на сервер, но при получении его обратно я получаю следующую ошибку в NSData и получено 0 байт.

Error Domain = NSCocoaErrorDomain Code = 256 "Операция не может\ u2019t быть завершено. (Ошибка Какао 256.) "

Я анализирую данные через XML и получаю URL-адрес изображения следующим образом

http://111.222.333.44/abc/images/User/img102-13.png

Теперь, когда я использую следующий код для извлечения imgstr в nsdata, но получаю вышеуказанную ошибку в том же самом.

 NSURL *u = [NSURL URLWithString:imgstr];
 NSError *error;
 NSData *dt = [NSData dataWithContentsOfURL:u options:NSDataReadingMapped error:&error];
 myImage = [UIImage imageWithData:dt];

Я могу легко получить другие данные, но не данные изображения.Кто-нибудь может указать, где я делаю ошибку или как я могу решить проблему?Заранее спасибо.

РЕДАКТИРОВАТЬ: В моем приложении я в первую очередь захвата изображения и хранения его на сервере.И затем на 2-й странице мне нужно получить данные изображения и показать то же изображение, когда пользователь нажимает кнопку под названием «Предварительный просмотр».У меня есть веб-служба, где я получаю данные, включая путь к изображению, как показано выше, но с помощью показанного метода я не могу получить данные изображения в NSData и получить ошибку Какао 256. Надеюсь, это поможет кому-топокажи мне лучший и правильный путь.Спасибо.

1 Ответ

0 голосов
/ 29 ноября 2011

Мне кажется, проблема этого подхода в том, что он будет блокировать поток пользовательского интерфейса до тех пор, пока изображение не будет загружено.

попробуйте загрузить это изображение в отдельном потоке.

Ну, я попробовал ваш код, и у меня тоже есть веб-сервис, который берет изображение с URL.

вместо выполнения приведенного выше кода. вы можете напрямую сделать попробуйте это:

    NSURL *u=[NSURL URLWithString:imgstr];
    UIImage *image1 = [UIImage imageWithData:[NSData dataWithContentsOfURL:u]];

В моем случае это работает.

Если вы все еще поражены, то ссылка ниже может помочь вам:

http://blog.beefyapps.com/2010/03/coredata-sqlite3-database-constraint-failed-error/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...