When using the WebSocket protocol for real-time communication in Node.js, we can use the ws module. The ws module is a modern WebSocket library that provides a simple and easy-to-use API for creating WebSocket server and client applications. This article will introduce how to install and use the ws module in Node.js.
1. Install Node.js
First, we need to install the Node.js environment on the local computer. You can download the Node.js installer suitable for your operating system from the official website https://nodejs.org/ and install it according to the instructions. After the installation is complete, you can enter the following command in the terminal or command line to verify whether Node.js has been successfully installed:
node -v
If the currently installed Node.js version number is returned, Node.js has been installed. Installed successfully.
2. Create a WebSocket server
Before installing the ws module, we can create a WebSocket server first to better understand how to use the module. You can create a WebSocket server by following the following steps:
Locate the project folder on the command line and enter the following command to initialize a new Node.js project:
npm init -y
Then, in the project Create a file named server.js in the folder and enter the following code to create a WebSocket server:
const WebSocket = require("ws"); const server = new WebSocket.Server({ port: 8080 }); server.on("connection", socket => { socket.on("message", message => { console.log(`Received message => ${message} `); }); socket.send("Hello! Message From Server!!"); });
The first line of the code introduces the ws module, and then creates a WebSocket server instance. This instance listens for incoming connections using port number 8080. When the server receives a new WebSocket connection, the "connection" event is fired. In this event handler, we can listen for messages received on the connection and send messages to the connection.
Enter the following command at the command line to start the WebSocket server:
node server.js
If everything is OK, you can see output similar to the following:
WebSocket server listening on port 8080
3. Install the ws module
Now, we are ready to use the ws module. You can enter the following command in the project folder to install the ws module:
npm install ws
4. Create a WebSocket client
Creating a WebSocket client is also very simple. We can create a WebSocket client by entering the following code in a new terminal or command line window:
const WebSocket = require("ws"); const socket = new WebSocket("ws://localhost:8080"); socket.on("open", () => { console.log("Connected to WebSocket server..."); }); socket.on("message", message => { console.log(`Received message => ${message}`); }); socket.on("close", () => { console.log("Disconnected from WebSocket server..."); });
In the second line, we create a WebSocket client instance and pass the address of the WebSocket server and port number. When a WebSocket client connects to the server, the "open" event is fired. We can output a successful connection message in the event response function.
In the fifth line, we listen to the "message" event in order to listen for messages received from the server. We can output the message received from the server in this event response function.
In line eight, we listen to the "close" event to output a message when the WebSocket client disconnects from the server.
Now, you can enter the following command in the command line to start the WebSocket client:
node client.js
When the WebSocket client connects successfully, the "Connected to WebSocket server..." message will be output. The WebSocket client then waits to receive messages from the server. You can send messages to the client on a WebSocket server instance so that messages sent by the server are received on the client.
Conclusion
This article introduces how to install and use the ws module in Node.js to implement WebSocket communication. We created a WebSocket server where we output the connected client logs to the console. Next, we installed the ws module and created a WebSocket client to connect to the server. We listened to the WebSocket client's open, close, and message events and output the messages sent by the WebSocket server to the console. These technologies can be applied to real-time web applications, online games, chat applications, and more.
The above is the detailed content of nodejs install ws module. For more information, please follow other related articles on the PHP Chinese website!