Node.js dgram.createSocket() Method
The dgram.createSocket() method is an inbuilt application programming interface within dgram module which is used to create the dgram.socket object.
Syntax:
const dgram.createSocket(options[, callback])
Parameters: This method takes the following parameter:
- options: It will use one of the following options-
- type: The family of sockets.
- reuseAddr: Boolean value if the address has been reused.
- ipv6Only: Setting ipv6Only to true will disable dual-stack support.
- recvBufferSize: Sets the SO_RCVBUF socket value.
- sendBufferSize: Sets the SO_SNDBUF socket value.
- lookup: Custom lookup function.
- callback: callback function for further operation.
Return Value: This method returns the object of dgram.socket.
Example 1: In this example, we will see the use of dgram.createSocket() Method
Filename: index.js
Javascript
// Node.js program to demonstrate the // dgram.createSocket() method // importing dgram module const dgram = require( 'dgram' ); // Creating and initializing client // and server socket by using // createSocket() method let client = dgram.createSocket( "udp4" ); let server = dgram.createSocket( "udp4" ); // Catching the message event server.on( "message" , function (msg) { // Displaying the client message process.stdout.write( "UDP String: " + msg + "\n" ); // Exiting process process.exit(); }) // Binding server with port .bind(1234, () => { // Setting the Send buffer size // by using setSendBufferSize() method server.setSendBufferSize(12345); // Getting the receive buffer size // by using getSendBufferSize() method const size = server.getSendBufferSize(); // Display the result console.log(size); }); // Client sending message to server client.send( "Hello" , 0, 7, 1234, "localhost" ); |
Output:
12345 UDP String: Hello
Example 2: In this example, we will see the use of dgram.createSocket() Method
Filename: index.js
Javascript
// Node.js program to demonstrate the // dgram.createSocket() method // Importing dgram module const dgram = require( 'dgram' ); // Creating and initializing client // and server socket by using // createSocket() method let client = dgram.createSocket( "udp4" , () => { console.log( "client is created" ); }); let server = dgram.createSocket( "udp4" , () => { console.log( "server is created" ); }); // Catching the message event server.on( "message" , function (msg) { // Displaying the client message process.stdout.write( "UDP String: " + msg + "\n" ); // Exiting process process.exit(); }); // Catching the listening event server.on( 'listening' , () => { // Getting address information // for the server const address = server.address(); // Display the result console.log(`server listening ${address.address}:${address.port}`); }); // Binding server with port address // by using bind() method server.bind(1234, () => { // Setting the Send buffer size // by using setSendBufferSize() method server.setSendBufferSize(1234567); // Getting the Send buffer size // by using getSendBufferSize() method const size = server.getSendBufferSize(); // Display the result console.log(size); }); // Client sending message to server client.send( "Hello" , 0, 7, 1234, "localhost" ); |
Output:
server listening 0.0.0.0:1234 1234567 server is created UDP String: Hello
Run the index.js file using the following command:
node index.js
Reference: https://nodejs.org/dist/latest-v12.x/docs/api/dgram.html#dgram_dgram_createsocket_options_callback