2013-09-22 2 views
3

Я хочу знать, как отправлять файлы через socket (socket.io) с node.js, это для мобильного приложения Phonegap.Как отправить файлы через гнездо NodeJs

Благодаря

+4

Вы даже попробовали это сделать? В качестве моего запроса я увидел кучу многообещающих результатов с 'socket.io send file', включая модуль, предназначенный для * точно * того, что вы запрашиваете ([delivery.js] (https://npmjs.org/package/ доставка)) – Chad

+0

Имейте в виду, что файлы отправляются в текстовом формате, а не в двоичной форме. –

+0

Хотя socket.io не поддерживает отправку двоичных данных, он может отправлять строку в любой кодировке. С помощью FileReader вы можете читать двоичные файлы в строки и отправлять их напрямую, не кодируя его на base64. (фактически это в ISO/IEC 8859-1 latin). Вы также можете использовать собственную библиотеку iOS. –

ответ

2

Я не уверен, если PhoneGap можно использовать Socket.io клиент библиотекой JavaScript, если да, то это легко. Вы можете использовать Deliver.js, как предложил Чад. Он основан на utf8/base64.

Или вы можете обратиться к этому How to Create a Resumable Video Uploader in Node.js. У него есть демо.

Если вы хотите использовать родную библиотеку iOS, взгляните на это: socket.IO-objc, это iOS-версия клиентской библиотеки socket.io, которая может хорошо общаться с сервером socket.io. Вы можете создать аналогичную логику передачи файлов на основе этой библиотеки.

+0

Здравствуйте, я сделал приложение с node.js и socket.io и работает очень хорошо, но я не мог отправлять файлы, пока я думаю о получении base4 файла и сделаю куски 8bytes, а затем попробуйте отправьте кусок куском, используя для этого куклу. – Gomosoft

+0

Просто увидел это: http://stackoverflow.com/questions/10738073/socket-io-phonegap, похоже, что PhoneGap может загружать клиентскую библиотеку socket.io. Поэтому я думаю, вы можете использовать delivery.js для отправки файла. Или просто создайте собственную логику отправки файлов. –

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