ノードjsでソケットioを使用することを学んでいますが、この例に出くわしました。これは本当に私を悩ませています。http://socket.io/の例に従っています: クライアント側:
<script src="/socket.io/socket.io.js"></script>
...
私の質問は、この src url がノード js によってどのように解決されるかです。この URL を処理するようにサーバーを構成したことはありません。以下は私のサーバーコードスニペットです。socket.io.js を public/views フォルダーにコピーしたことはありません。ノードが魔法のようにノードモジュールから直接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());