Estoy encriptando una identificación de usuario usando crypto-js para enviarla a través de una URL como la siguiente para que el usuario la valide al hacer clic:

http: // localhost: 3000 / api / customer / enable / U2FsdGVkX1DXzzLuf9TgBf31Mc2V / QBVAN05PovlNM

Esta es la identificación de usuario encriptada:

U2FsdGVkX1DXzzLuf9TgBf31Mc2V / QBVAN05PovlNM

Usando crypto-js encrypt:

crypto.AES.encrypt(term.toString(), config.CRYPTO_PASSPHRASE_RES).toString(crypto.enc.Utf8)

Cuando ejecuto la API, devuelve route not found, y cuando elimino / de la identificación de usuario encriptada, funcionó.

¿Cómo puedo evitar que crypto-js agregue / a las ID encriptadas?

0
alim1990 18 jul. 2020 a las 14:48

1 respuesta

La mejor respuesta

La solución fue usar encodeURIComponent() y luego decodeURIComponent() como se muestra a continuación:

encodeURIComponent(crypto.AES.encrypt(term.toString(), config.CRYPTO_PASSPHRASE_RES).toString());

Reemplazará / en otra cosa.

1
alim1990 20 jul. 2020 a las 06:00