2015-12-01 3 views
0

Я пытаюсь загрузить свое изображение в серверное преобразование в NSData, но для преобразования изображений требуется много времени.Загрузить изображение без преобразования NSData

Можно ли загрузить изображение на сервер без преобразования в NSData?

+0

Нет, вы не можете использовать прямое FTP-соединение. хорошим примером является https://github.com/lloydsargent/BlackRaccoon –

+0

благодаря @JanakLN, но когда я загружаю больше изображений (10 изображений) за раз, чем это требуется в течение длительного времени, а также некоторое предупреждение о некотором времени в устройстве iPhone. Поэтому я хочу избежать процесса (изображение для преобразования NSData), если это возможно. –

+0

использовать base64 преобразование –

ответ

0

При запуске я попытался отправить изображение непосредственно на сервер. Но без преобразования изображения в данные и строки, если я попытался отправить его, он не смог отправить и это невозможно. Поскольку на сервере, если мы отправляем данные на сервер, это должен быть строковый формат. Если мы отправляем изображение напрямую, это занимает много места, и это не должно быть data.Image должен быть URL или путь на сервере.

0

Это зависит от источника этих изображений. Если, например, изображения из библиотек фотографий, то да, вы можете получить исходный актив, избегая неэффективного процесса преобразования UIImage в NSData (что может сделать объект более крупным, ввести потери качества, потерять метаданные и т. Д. .).

Ключевой момента домой сообщение в этом случае не является «как избежать преобразований в NSData», а «как избежать кругооборота изображения через UIImage, а затем переконвертировании его обратно в NSData, а просто получить первоначальный актив ».

Но это относится только к изображениям, для которых у вас есть исходный ресурс (например, изображения в библиотеке фотографий, изображения в папке с документами и т. Д.). В этих случаях просто возьмите необработанный NSData, и все готово.

Но если это изображение, которое вы сгенерировали программным способом (например, снимок представления UIKit), то это должно быть преобразовано в NSData. Но если вы можете избежать кругового отключения его через UIImage в первую очередь, тогда вы устраните это накладные расходы.

0

Вы можете использовать тип данных blob хранить данные. Хотя это не рекомендуется. Вы можете ссылаться на эти ссылки. BLOB data type и how to use BLOB storage service как не помещать большие БЛОБЫ в базу данных. Поместите их в файловую систему рядом с файлом базы данных, а затем напишите имена файлов или URL-адрес в базе данных. Это будет намного быстрее, будет использовать базу данных намного эффективнее, минимизирует ввод-вывод.