Hacer ping a un servidor se usa para determinar si está en línea o no. La idea es enviar un mensaje de eco al servidor (llamado ping) y se espera que el servidor responda con un mensaje similar (llamado pong). Los mensajes de ping se envían y reciben mediante ICMP (Protocolo de mensajería de control de Internet). Cuanto menor sea el tiempo de ping, más fuerte será la conexión entre el host y el servidor.
Enfoque: un enfoque obvio es usar el símbolo del sistema para enviar mensajes de ping al servidor. Por favor, consulte esta publicación para más detalles. En este artículo, usaremos Ajax para enviar una solicitud al servidor requerido y luego examinaremos el código de estado recibido para saber si el servidor se está ejecutando o no. La idea es que un servidor está definitivamente en funcionamiento si devuelve un código de estado 200. Otros códigos de estado como 400, etc. apuntan a una posible interrupción del servidor.
A continuación se muestra la implementación paso a paso:
Paso 1: Cree un archivo llamado ‘ index.html ‘ para diseñar la página web básica. La función «pingURL» se invoca cuando un usuario hace clic en el botón de la página web.
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content= "width=device-width, initial-scale=1.0"> <script src="index.js"></script> <script type="text/javascript" src= "https://code.jquery.com/jquery-1.7.1.min.js"> </script> <title>Ping a server using JavaScript</title> </head> <body> <label for="url"> Enter the URL you want to ping: </label><br> <input type="text" id="url" name="url" style="margin: 10px;"><br> <input type="submit" value="Submit" onclick="pingURL()"> </body> </html>
Paso 2: Cree el archivo ‘ index.js ‘ para realizar una solicitud al servidor. La función «pingURL» definió la configuración requerida para la solicitud de Ajax en la variable ‘configuración’.
index.js
function pingURL() { // The custom URL entered by user var URL = $("#url").val(); var settings = { // Defines the configurations // for the request cache: false, dataType: "jsonp", async: true, crossDomain: true, url: URL, method: "GET", headers: { accept: "application/json", "Access-Control-Allow-Origin": "*", }, // Defines the response to be made // for certain status codes statusCode: { 200: function (response) { console.log("Status 200: Page is up!"); }, 400: function (response) { console.log("Status 400: Page is down."); }, 0: function (response) { console.log("Status 0: Page is down."); }, }, }; // Sends the request and observes the response $.ajax(settings).done(function (response) { console.log(response); }); }
Producción
- Abra la página web en su navegador web.
- Presione ‘ Ctrl+Shift+I ‘ para navegar a Herramientas de desarrollador del navegador.
- Ingrese la URL a la que desea hacer ping en la entrada del formulario y haga clic en el botón ‘Enviar’.
Publicación traducida automáticamente
Artículo escrito por neeraj26pathak y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA