简体   繁体   English

如何使用Node.js运行用JS编写的server.js

[英]How to run server.js written in js with Node.js

i have a file with nodejs language which i found in the internet, i want to run it, but i don't know how to run it. 我有一个在互联网上找到的使用nodejs语言的文件,我想运行它,但是我不知道如何运行它。 i tryed to run with cmd command: node server.js but it not work. 我尝试使用cmd命令运行:node server.js,但它不起作用。

file server.js 文件server.js

 var port = process.env.PORT || 3000; server = require('http').createServer(), io = require('socket.io').listen(server), users = {}, socks = {}; function Uid() { this.id = ++Uid.lastid; } Uid.lastid = 0; //Handle users io.sockets.on('connection', function (socket) { // Event received by new user socket.on('join', function (recv) { if (!recv.user) { socket.emit('custom_error', { message: 'User not found or invalid' }); return; } // The user already exists if (users[recv.user]) { socket.emit('custom_error', { message: 'The user '+ recv.user +' already exists' }); return; } // If there is users online, send the list of them if (Object.keys(users).length > 0) socket.emit('chat', JSON.stringify( { 'action': 'usrlist', 'user': users } )); // Set new uid uid = new Uid(); socket.user = recv.user; // Add the new data user users[socket.user] = {'uid': Uid.lastid, 'user': socket.user, 'name': recv.name, 'status': 'online'} socks[socket.user] = {'socket': socket} // Send new user is connected to everyone socket.broadcast.emit('chat', JSON.stringify( {'action': 'newuser', 'user': users[socket.user]} )); }); // Event received when user want change his status socket.on('user_status', function (recv) { users[socket.user].status = recv.status; socket.broadcast.emit('chat', JSON.stringify( {'action': 'user_status', 'user': users[socket.user]} )); }); // Event received when user is typing socket.on('user_typing', function (recv) { var id = socks[recv.user].socket.id; io.sockets.socket(id).emit('chat', JSON.stringify( {'action': 'user_typing', 'data': users[socket.user]} )); }); // Event received when user send message to another socket.on('message', function (recv) { var id = socks[recv.user].socket.id; var msg = {'msg': recv.msg, 'user': users[socket.user]}; io.sockets.socket(id).emit('chat', JSON.stringify( {'action': 'message', 'data': msg} )); }); // Event received when user has disconnected socket.on('disconnect', function () { socket.broadcast.emit('chat', JSON.stringify( {'action': 'disconnect', 'user': users[socket.user]} )); //socket.broadcast.emit('chat', JSON.stringify( {'action': 'offline', 'user': users[socket.user]} )); delete users[socket.user]; delete socks[socket.user]; }); }); //Listen to the server port server.listen(port, function () { var addr = server.address(); console.log('jquery-chat server listening and ready'); }); 

To execute a javascript using NodeJS you have to use the node <filename> command from the command prompt/terminal. 要使用NodeJS执行javascript,您必须从命令提示符/终端使用node <filename>命令。

You're using a relative path. 您正在使用相对路径。 Change node server.js to node "/full/path/to/server.js" . node server.js更改为node "/full/path/to/server.js"

For example, if server.js is located in C:\\myserver\\server.js , then run: 例如,如果server.js位于C:\\myserver\\server.js ,则运行:

node "C:\myserver\server.js"

You need to install socket.io . 您需要安装socket.io Run in terminal: 在终端中运行:

npm install socket.io

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM