İşte anlaşma: socket.io'yu hızlı bir projede kullanmaya çalışıyorum. Express Js 4 lauch edildikten sonra, ekspres oluşturucumu güncelledim ve şimdi ./bin/wwwbu değişkenler de dahil olmak üzere uygulamanın ilk işlevleri dosyaya giriyor (www dosya içeriği: http://jsfiddle.net/avMa5/ )
var server = app.listen(app.get('port'), function() {..}
(kontrol edin npm install -g express-generatorve sonraexpress myApp
Soket.io belgelerinin bizden onu nasıl çalıştırmamızı istediğini hatırlayalım:
var app = require('express').createServer();
var io = require('socket.io')(app);
Tamam ama tavsiye edildiği gibi app.js içinde yapamıyorum. Bu, çalışmak için ./bin/www içinde yapılmalıdır. ./bin/www içinde, onu çalıştırmak için yapabileceğim şey bu:
var io = require('socket.io')(server)
Tamam bu işe yarıyor, ancak io var'ı başka hiçbir yerde kullanamıyorum ve gerçekten socket.io işlevlerimi wwwdosyaya koymak istemiyorum .
Bu sadece temel sözdizimi tahmin ediyorum, ama, işe bu olsun bile kullanmıyor olabilir module.exports = serverveya server.exports = serverne de module.exports.io = app(io)www dosya üzerinde
Öyleyse soru şu: Bu / bin / www dosyasını uygulamamın başlangıç noktası olarak soket.io'yu nasıl kullanabilirim?
./bin/www.. Sadece seninvar appolduğu yere koy .