1

我的问题很简单,很烦人。我正在开发一个 Sailsjs 应用程序,我只想使用 socket.io 来上传文件。

我通常使用推荐的 Sails 上传处理程序 Skipper,但 req.file() 对象保持未定义(尽管它适用于 http 请求)。

4

1 回答 1

0

船长没有这个能力。至少我在文档中找不到任何证据:https ://github.com/balderdashy/skipper

由于sails@0.11.0 支持socket.io v1.2.1,它支持二进制数据传输: http ://socket.io/blog/introducing-socket-io-1-0/#binary-support

您想将数据从客户端传输到服务器。但是,您找到的大多数示例都是相反的,例如https://stackoverflow.com/a/24124966/401025

服务器向客户端发送图像:

require('socket.io')(3000).on('connection', function(socket){
  require('fs').readFile('image.png', function(err, buf){
    socket.emit('image', { image: true, buffer: buf });
  });
});

客户收到图片:

socket.on("image", function(image, buffer) {
   if(image){
       // do something with image
   }
});

我还没有测试它是否可以从客户端到服务器。你得试试 ;)

于 2016-09-08T18:26:49.093 回答