【问题标题】:Using session.socket.io for message notifications. Does it work with POST requests?使用 session.socket.io 进行消息通知。它适用于 POST 请求吗?
【发布时间】:2013-10-26 03:33:06
【问题描述】:

所以我有这个网络应用程序,我希望它在收到按摩时通过 socket.io 向用户发送通知。

我的 app.js 文件中包含以下代码:

exports.sessionSockets = new SessionSockets(exports.io, sessionStore, cookieParser);

app.get('/foo', home.foo);
app.post('/bar', home.bar);

还有 home.js:

exports.foo = function(req, res){
  exports.sessionSockets.on('connection', function (err, socket, session) {
    if (err) console.log(err);
    console.log('session', session);
  });

  res.render('foo');
}

exports.bar = function(req, res){
  exports.sessionSockets.on('connection', function (err, socket, session) {
    if (err) console.log(err);
    console.log('session', session);
  });
  res.send(200);
}

第一个函数exports.foo 工作正常。第二个,exports.bar,没有。我从来没有看到控制台的任何输出。有没有办法使这项工作?还是我做错了?

编辑:添加了 res.send 语句。还是不行。

【问题讨论】:

    标签: node.js express socket.io


    【解决方案1】:

    第一个猜测是exports.bar 从未正确响应 HTTP POST 请求这一事实搞砸了。在那里输入某种响应,res.send(200) 或其他什么,看看是否能解决问题。

    【讨论】:

    • 它确实响应了。我放入函数中的所有其他代码都会执行。
    • 您永远不会在 res 对象上调用任何方法。您的 HTTP(不是 Web 套接字,POST)永远不会响应。
    猜你喜欢
    • 2021-08-21
    • 1970-01-01
    • 2012-04-06
    • 1970-01-01
    • 1970-01-01
    • 2018-05-29
    • 2022-01-21
    • 2017-08-06
    • 1970-01-01
    相关资源
    最近更新 更多