在Linux上,我可以使用netstat -pntl | grep $PORT或fuser -n tcp $PORT找出哪个进程(PID)正在侦听指定的TCP端口.如何在Mac OS X上获得相同的信息?
我有一个使用connect在node.js中运行的简单服务器:
var server = require('connect').createServer();
//actions...
server.listen(3000);
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我有实际的处理程序,但这是基本的想法.我一直遇到的问题是
EADDRINUSE, Address already in use
Run Code Online (Sandbox Code Playgroud)
在以前崩溃或错误之后再次运行我的应用程序时,我收到此错误.由于我没有打开终端的新实例,因此我将关闭该过程ctr + z.
我相当确定我所要做的就是关闭服务器或连接.我打过电话server.close()的process.on('exit', ...);,没有运气.
我正在使用socket.io尝试Node.js
现在这是我的场景我是ubuntu 12.04用户,我在桌面上有文件夹pp
在里面我是推送服务器文件即 app.js
这是内容
var fs = require('fs')
, http = require('http')
, socketio = require('socket.io');
var server = http.createServer(function(req, res) {
res.writeHead(200, { 'Content-type': 'text/html'});
res.end(fs.readFileSync(__dirname + '/index.html'));
}).listen(8080, function() {
console.log('Listening at: http://localhost:8080');
});
socketio.listen(server).on('connection', function (socket) {
socket.on('message', function (msg) {
console.log('Message Received: ', msg);
socket.broadcast.emit('message', msg);
});
});
Run Code Online (Sandbox Code Playgroud)
现在在同一文件夹中我有另一个文件index.html喜欢
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="/socket.io/socket.io.js"></script>
<script>
$(function(){
var iosocket = io.connect();
iosocket.on('connect', function () {
$('#incomingChatMessages').append($('<li>Connected</li>'));
iosocket.on('message', function(message) {
$('#incomingChatMessages').append($('<li></li>').text(message));
});
iosocket.on('disconnect', function() { …Run Code Online (Sandbox Code Playgroud)