Debian 12 bookworm
Sponsored Link

Node.js 18 : Install2023/07/14

 
Install Node.js 18.
[1] Install Node.js 18 and try to run test script.
root@dlp:~#
apt -y install nodejs npm
root@dlp:~#
node -v

v18.13.0

# verify to create test script

root@dlp:~# cat > nodejs_test.js <<'EOF' 
var http = require('http');
var server = http.createServer(function(req, res) {
  res.write("Hello, This is the Node.js Simple Web Server!\n");
  res.end();
}).listen(8080);
EOF 

root@dlp:~#
node nodejs_test.js &

[1] 18870
root@dlp:~#
curl localhost:8080

Hello, This is the Node.js Simple Web Server!
root@dlp:~#
kill 18870

[2] Create a sample chat application which WebSocket is implemented to verify working.
debian@dlp:~$
npm install fs socket.io express
debian@dlp:~$
vi chat.js
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
});

io.on('connection', function(socket){
  socket.on('chat message', function(msg){
    io.emit('chat message', msg);
  });
});

http.listen(1337, function(){
  console.log('listening on *:1337');
});

debian@dlp:~$
vi index.html
<!DOCTYPE html>
<html>
<head>
<title>WebSocket Chat</title>
</head>
<body>
<form action="">
<input id="sendmsg" autocomplete="off" /><button>Send</button>
</form>
<ul id="messages" style="list-style-type: decimal; font-size: 16px; font-family: Arial;"></ul>
<script src="/socket.io/socket.io.js"></script>
<script src="http://code.jquery.com/jquery.min.js"></script>
<script>
  var socket = io();
  $('form').submit(function(){
    socket.emit('chat message', $('#sendmsg').val());
    $('#sendmsg').val('');
    return false;
  });
  socket.on('chat message', function(msg){
    $('#messages').append($('<li style="margin-bottom: 5px;">').text(msg));
  });
</script>
</body>
</html>

debian@dlp:~$
node chat.js

listening on *:1337
[3] Access to the sample application to verify it works normally.
Matched Content