Codificar URL en Node.js

Shraddha Paghdar 12 octubre 2023
Codificar URL en Node.js

En este artículo, aprenderemos cómo realizar la codificación de URL en Node.js.

Codificación URI en Node.js

JavaScript ofrece una función de codificación URI integrada llamada encodeURIComponent(). Esta selección codifica un URI cambiando cada ejemplo de grandes caracteres con uno, dos, tres o hasta cuatro secuencias de ruptura que representan la codificación UTF-8 del individuo.

Puede usar esta función en cualquier aplicación del lado del cliente o del lado del servidor, incluido Node.js.

Sintaxis:

encodeURIComponent(uriComponent)

El uriComponent es un parámetro obligatorio que puede ser un número, cadena, booleano, indefinido, nulo o cualquier objeto.

Antes de codificar, el uriComponent recibe transformado en una cadena. Se devuelve una nueva cadena como salida que representa el uriComponent proporcionado codificado como un elemento URI.

Use encodeURIComponent() en campos ingresados por personas desde formularios enviados al servidor a través de parámetros de cadena de consulta. Esto elimina codificaciones y símbolos generados accidentalmente durante la entrada de datos para elementos HTML individuales u otros caracteres que necesitan ser codificados/descodificados.

La única diferencia entre encodeURI y encodeURIComponent es que encodeURIComponent codifica la cadena completa mientras que encodeURI ignora el prefijo de protocolo ("http://") y el nombre de dominio.

Ejemplo de código:

console.log(encodeURIComponent(
    'select * from Users where email = "example@domain.com"'));
console.log(encodeURIComponent('http://exampleDomain.com/?param1=hello world'));
console.log(
    encodeURI('select * from Users where email = "example@domain.com"'));
console.log(encodeURI('http://exampleDomain.com/?param1=hello world'));

En el ejemplo anterior, la consulta de la base de datos MySQL y la consulta de la URL se codifican mediante las funciones encodeURIComponent() y encodeURI(). La principal diferencia entre encodeURIComponent() y encodeURI() es que el dominio HTTP está codificado antes y después solo los parámetros de consulta, y los caracteres = y @ no están codificados en encodeURI().

Intente ejecutar el código anterior en cualquier compilador que admita Node.js. Va a mostrar el siguiente resultado:

Producción :

select%20*%20from%20Users%20where%20email%20%3D%20%22example%40domain.com%22
http%3A%2F%2FexampleDomain.com%2F%3Fparam1%3Dhello%20world

select%20*%20from%20Users%20where%20email%20=%20%22example@domain.com%22
http://exampleDomain.com/?param1=hello%20world

Ejecutar demostración

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

Artículo relacionado - Node.js Encode