Open In App

Node.js dgram.createSocket() Method

Improve
Improve
Like Article
Like
Save
Share
Report

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



Last Updated : 06 Apr, 2023
Like Article
Save Article
Share your thoughts in the comments
Similar Reads