Node.js如何将链接标记解析为节点模块

时间:2013-12-05 16:04:34

标签: javascript node.js socket.io node-modules

我正在学习在节点js中使用socket io,我遇到了这个让我烦恼的例子。我在http://socket.io/跟随示例: 客户方:

<script src="/socket.io/socket.io.js"></script>
...

我的问题是这个src url如何通过节点js解析?我从来没有配置我的服务器来处理这个网址。以下是我的服务器代码段。我从未将socket.io.js复制到任何公共/视图文件夹中。似乎有一些规则,节点可以直接从像魔术这样的节点模块中提取js文件。任何人都可以解释这是如何工作的吗?

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});
...

var app = express.createServer();

app.configure(function() {
    app.use(express.logger());
    app.use(express.bodyParser());
    app.set('views', __dirname + '/views');
    app.set('view engine', 'ejs');
    app.use(express.static(__dirname + '/public'));
    app.use(express.cookieParser());

1 个答案:

答案 0 :(得分:2)

Socket.io为您的服务器添加一个连接侦听器,为其客户端JS提供响应该URL的连接 请参阅documentation

要禁用此功能,请将browser client config option设置为false。