【发布时间】:2018-10-20 03:11:46
【问题描述】:
我在父进程中有这个:
import cp = require('child_process');
const k = cp.fork(file);
app.use(function(req,res,next){
k.send('handle', req.socket);
};
然后我在子进程中有这个:
process.on('message', function (m, socket) {
if (m === 'handle' && socket) {
socket.end('foobar!!!');
}
else{
console.log('nope');
}
});
在做了一些记录之后,我知道socket.end('foobar!!!'); 被调用了。但是我在浏览器中看到了这个错误:
任何人都知道如何使用我可以使用的普通套接字发送有效响应?
我想我需要学习如何实际编写有效的 HTTP 响应,以前从未尝试过。
【问题讨论】:
-
这个例子是相关的:nodejs.org/api/…
-
它似乎只是写入套接字,但它在服务器配置中使用
pauseOnConnect。 -
我在 Node.js 问题跟踪器上提交了一个关于这个问题的问题:github.com/nodejs/node/issues/20644
-
您是否意识到仅发送
foobar!!!不是有效的http 响应?为什么不尝试发送实际的 http 响应。 -
@jfriend00 我想也许 Express 事先为我写了一些标题。你能展示如何从头开始编写有效的响应吗?
标签: node.js sockets http express tcp