【发布时间】:2015-02-14 07:49:36
【问题描述】:
这是 node.js 代码(express.js 和 socket.io)的简短 sn-p。发送 POST 请求和发出套接字响应是否会被视为一种不好的做法,为什么?例如:
var io = require('socket.io')(http);
app.post('/tickets', jsonParser, function(req, res) {
io.emit('ticket', req.body);
return res.sendStatus(200);
}
【问题讨论】:
-
如果你承担了建立套接字通信(全双工)的负担,这两个部分紧密耦合,为什么要通过 HTTP 发送 post 请求并通过套接字返回响应?
-
在这里同意 niconic - 尽管我可以想到在某些情况下您希望非套接字系统执行 XHR 发布请求,然后向套接字连接发送响应。除了潜在的混乱/混乱之外,我想不出其他原因来说明为什么这是一种不好的做法——只要确保它是你想要支持的最连贯的设计。
-
你正在向这里的每个人发送,而不仅仅是发送请求的客户端。
-
是的,我正在向所有人发出信号,这正是我的意图(在这种特殊情况下不使用套接字房间)。关于niconic提到的负担:我的想法是提交本机POST请求而无需为其编写一行js代码-我完全理解侦听套接字响应将需要用js编写套接字事件侦听器
标签: node.js sockets post express socket.io