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
// 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
// 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