¿Cuál es la diferencia entre una codificación URL y una codificación HTML ?
?
convierte en %3F
codificará los caracteres para que sean válidos para HTML. Eg se <
convierte en<
¿Cuál es la diferencia entre una codificación URL y una codificación HTML ?
?
convierte en %3F
codificará los caracteres para que sean válidos para HTML. Eg se <
convierte en<
Respuestas:
La codificación HTML escapa de los caracteres especiales en cadenas utilizadas en documentos HTML para evitar confusión con elementos HTML como cambiar
"<hello>world</hello>"
a
"<hello>world</hello>"
La codificación de URL hace algo similar para los valores de cadena en una URL como cambiar
"hello+world = hello world"
a
"hello%2Bworld+%3D+hello+world"
urlEncode reemplaza los caracteres especiales con caracteres que los navegadores web / servidores web pueden entender con el fin de direccionar ... Por ejemplo, los espacios se reemplazan con% 20, '=% 27, etc.
Vea estas referencias:
HtmlEncode reemplaza los caracteres especiales con cadenas de caracteres que son reconocidas por el propio motor HTML para representar el contenido de la página; cosas como & se convierte en & or < = < > = <
esto evita que el motor HTML interprete estos caracteres como partes del marcado HTML y, por lo tanto, los renderice como si fueran instrumentos de cuerda.
Vea esta referencia:
Tanto HTML como URL son esencialmente lenguajes muy restringidos . Como idioma, agregan significado a palabras clave u operadores específicos. Sin embargo, para ambos idiomas, las palabras clave son casi siempre caracteres individuales. Por ejemplo
Sin embargo, en el uso de cada idioma es posible usar estos constructos de una manera que no asegure el significado del idioma. Por ejemplo, esta publicación contiene un carácter>. No quiero que se interprete como HTML, solo texto.
Aquí es donde entran en juego los métodos Codificar y Decodificar. Estos métodos tomarán, respectivamente, una cadena y convertirán cualquiera de los caracteres que de otro modo se tratarían como palabras clave en una forma de escape que no se interpretará como parte del idioma.
Por ejemplo: Pasar> a HtmlEncode devolverá & gt;
HTMLEncode y URLEncode tratan con caracteres no válidos en HTML y URL, o más exactamente, caracteres que deben escribirse especialmente para ser interpretados correctamente. Por ejemplo, en HTML, los caracteres <y> se utilizan para indicar etiquetas. Por lo tanto, si quisiera escribir una fórmula matemática, algo como 1 + 1 <2 + 2, el '<' normalmente se interpretaría como el comienzo de una etiqueta. HTMLEncoding convierte este carácter en "& lt;" que es la representación codificada del signo menor que. URLEncoding hace lo mismo, pero para las URL, para las cuales los caracteres especiales son diferentes, aunque existe cierta superposición.
No sé en qué idioma está trabajando, pero el manual de PHP, por ejemplo, proporciona buenas explicaciones.
URLEncode
Devuelve una cadena en la que todos los caracteres no alfanuméricos excepto -_. han sido reemplazados con un signo de porcentaje (%) seguido de dos dígitos hexadecimales y espacios codificados como signos más (+). Está codificado de la misma manera que los datos publicados desde un formulario WWW, es decir, de la misma manera que en el tipo de medio application / x-www-form-urlencoded. Esto difiere de la codificación »RFC 1738 (consulte rawurlencode ()) en que, por razones históricas, los espacios se codifican como signos más (+).