使用websocket node.js发送PDF文件

我有以下服务器:

var pvsio = require("./pvsprocess"), ws = require("ws"), util = require("util"), http = require("http"), fs = require("fs"), express = require("express"), webserver = express(), procWrapper = require("./processwrapper"), uploadDir = "/public/uploads", host = "0.0.0.0", port = 8082, workspace = __dirname + "/public", pvsioProcessMap = {},//each client should get his own process httpServer = http.createServer(webserver), baseProjectDir = __dirname + "/public/projects/", PDFDocument = require ("pdfkit"); var p, clientid = 0, WebSocketServer = ws.Server; ... var wsServer = new WebSocketServer({server: httpServer}); wsServer.on("connection", function (socket) { var socketid = clientid++; var functionMaps = createClientFunctionMaps(); socket.on("message", function (m) { 

有可能发送一个PDF文件到socket.on(“message”..函数?我可以使用send()发送消息,有一些函数发送文件?

谢谢

我只需要以二进制forms发送PDF。

 fs.readFile(something.pdf,function(err,data){ if(err){console.log(err)} ws.send(data,{binary:true}); } 

而在客户端,我会从接收到的二进制数据中创build一个blob和一个对象url。 从这个开始,你几乎可以做任何事情,说在一个新的窗口/选项卡中打开PDF文件。

 conn.onmessage = function(e){ pdfBlob = new Blob([e.data],{type:"application/pdf"}); url = webkitURL.createObjectURL(pdfBlob); window.open(url); } 

希望这个帮助。