ここに私のapp.jsファイルがあります
/**
* Module dependencies.
*/
var io = require('socket.io'),
express = require('express'),
path = require('path'),
jquery = require('jquery'),
routes = require('./routes');
/**
* Create app
*/
var app = express()
, server = require('http').createServer(app)
, io = io.listen(server);
/**
* Configure app
*/
app.configure(function(){
app.set('port', 2121);
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(express.static(path.join(__dirname, 'public')));
});
// set both servers listening
server.listen( app.get('port') );
/**
* App gets
*/
app.get('/', routes.index );
console.log("listining on port " + app.get('port'));
io.set('log level', 1); // this gets rid of all the internal socket messages
io.sockets.on('connection', function(socket){
console.log('made connection');
});
そして、インデックスがレンダリングされたときに読み込まれるindex.jsファイルに
$(document).ready( function () {
var socket = io.connect('http://localhost:2121');
});
私が抱えている問題は、このコードが一度実行され、端末が表示されることです
My-MacBook-Pro-3:board_demo home$ node app.js
info - socket.io started
listining on port 2121
made connection
ただし、プロセスを終了し^z
てコードを再度実行しようとするとnode app.js
、
My-MacBook-Pro-3:one_board_demo home$ node app.js
info - socket.io started
listining on port 2121
warn - error raised: Error: listen EADDRINUSE
次に、ポートを切り替えると、プロセスが繰り返されます。
何が原因でしょうか? 現在使用しているコードのほとんどは、以前に作成したプロジェクトから取ったもので、この問題はありませんでした。
助けてくれてありがとう