【发布时间】:2015-02-03 22:58:45
【问题描述】:
如何根据我的以下 NodeJS 代码访问全局范围内的套接字
io.on('connection', function (socket) {
console.log('connection '+socket)
socket.on("data",function(d){console.log('data from flash: ',d);});
socket.emit("message","wtfwtwftwftwf hello from server");
socket.on('disconnect', function (socket) {
console.log("disconnect");
});
});
我需要从以下 app.post 方法中访问套接字
var express = require('express'),
multer = require('multer');
var app = express();
//auto save file to uploads folder
app.use(multer({ dest: './uploads/'}))
app.post('/', function (req, res) {
console.log(req.body); //contains the variables
console.log(req.files); //contains the file references
res.send('Thank you for uploading!');
});
app.listen(8080);
尚未测试,但先尝试一个简单的 getter 函数
io.on('connection', function (socket) {
console.log('connection '+socket)
socket.on("data",function(d){console.log('data from flash: ',d);});
socket.emit("message","wtfwtwftwftwf hello from server");
return{
getSocket: function(){
return socket;
}
};
socket.on('disconnect', function (socket) {
console.log("disconnect");
});
});
io.getSocket() ??
【问题讨论】:
-
这几乎肯定是 X/Y 问题:您想做 X,但您询问了 Y(在全局范围内使用
socket)。 X 是什么?
标签: javascript node.js scope