CentOS下搭建websocket(NodeJS+ws)小记
安装socket.io
npm install -g socket.io
npm install express -gd
npm install -g nodemon
安装socket.io
npm install -g socket.io
常用两种情况:
1.package.json不存在时
运行命令: npm init可自动创建package.json文件
2.package.json存在时
运行命令:npm install 或者 npm install –save-dev会自动将package.json中的模块安装到node-modules文件夹下。
//-------------------------------------------------------------------------------------------------------------------------------------
重点
//-------------------------------------------------------------------------------------------------------------------------------------
1,官网下载安装nodejs,
$ ln -s /usr/local/解压目录/bin/npm /usr/local/bin/npm
2,测试nodejs,新建js文件,保存于/home/test.js,内容如下:
使用nodejs执行:
屏幕打印出Hello World!即表示 nodejs安装成功。
3,安装ws,先cd到/usr/local,使用命令:
即可安装成功,这时会在/usr/local/lib下建立一个目录node_modules,进入即可看到ws文件夹。
4,配置NODE_PATH,将其指向到/usr/local/lib/node_moudles目录
或
文件末尾添加
export NODE_PATH=/usr/local/lib/node_modules
保存执行
此环节可解决“Cannot find module ‘ws’”的服务端报错。
5,经过上述几步操作,websocket的服务端就搭建成功了。
下面是websocket的简单例子:
服务端
server.js,保存于/home/server.js
, wss = new WebSocketServer({port: 8080});
wss.on('connection', function(ws) {
ws.on('message', function(message) {
console.log('received: %s', message);
});
ws.send('something');
});
运行:
客户端
client.htm
client.js
ws.onopen = function() {
alert("Opened");
ws.send("I'm client");
};
ws.onmessage = function (evt) {
alert(evt.data);
};
ws.onclose = function() {
alert("Closed");
};
ws.onerror = function(err) {
alert("Error: " + err);
};