Hola, ¿reaccionan los parámetros del enrutador decodifica automáticamente la cadena?
Por ejemplo tengo esta ruta
<Route path="/callback/:url"/>
y cuando lo llamo con C5jb20%3D
imprimirá C5jb20=
cuando yo console.log() esos parámetros
¿Es este un comportamiento esperado? ¿Puedo cambiar este comportamiento para seguir obteniendo la cadena codificada?
¡Gracias!
C5jb20%3D
es una cadena codificada de URL, que es una forma de codificar caracteres especiales en una URL. Por ejemplo, si tiene un parámetro de URL como ?redirect=/some/path
, un servidor podría interpretar las barras inclinadas como rutas de enrutamiento y estropear el enrutamiento esperado. Es por eso que ves cosas como ?redirect=%2Fsome%2Fpath
, y tu ejemplo, en las URL.
window.location.path
tendrá la URL original sin codificar.
También puede recuperarlo con encodeURIComponent
:
encodeURIComponent('C5jb20=') // "C5jb20%3D"
Sin embargo, probablemente no quiera hacerlo, dependiendo de su caso de uso.