2011-11-03 11 views
14

¿Se trata %3B de manera diferente a %3b en una URL?¿La codificación de porcentaje de URL es sensible a mayúsculas y minúsculas?

+1

Sí. ¿Incluso trataste de googlearlo? http://www.google.no/search?gcx=w&sourceid=chrome&ie=UTF-8&q=url+encoding+case+sensitive ¿El resultado superior le proporciona exactamente lo que desea? –

+0

Encontré información conflictiva. Pensé que hacer una pregunta sería la forma más fácil de aclarar las cosas. – hugomg

+0

Ok. Creo que la información en el enlace dice que es de RFC. Pero cómo se implementa es siempre un misterio para los fabricantes de navegadores. ;) –

Respuesta

17

No, La codificación porcentual de URL no es sensible a mayúsculas y minúsculas. De acuerdo con RFC 3986:

2.1. Porcentaje-Encoding

[...]

Los dígitos hexadecimales en mayúsculas 'A' a través de 'F' son equivalentes a los minúsculas dígitos 'a' a través de 'f', respectivamente. Si dos URI difieren solo en el caso de los dígitos hexadecimales utilizados en octetos codificados en porcentaje, son equivalentes.

+0

Puede ser apropiado mencionar que en los casos en que se usa un URI para una declaración de espacio de nombres en XML (también XHTML, SOAP, etc.), ese porcentaje de codificación no tiene efecto (no se decodifica) y simplemente parte de la cadena eso conforma el espacio de nombres. Como resultado, * es * sensible a mayúsculas y minúsculas. Es decir. 'xmlns: t =" http://foo.bar/%2A "' is * no es igual, ni equivalente * a 'xmlns: t =" http://foo.bar/%2a "'. – Abel

+0

@Abel si bien es cierto, eso se debe a que los espacios de nombres XML realmente no son URI (aunque su especificación afirma falsamente lo contrario). Por ejemplo, la parte del espacio de nombres que pretende ser un componente de dominio también distingue entre mayúsculas y minúsculas en declaraciones de espacios de nombres XML, en violación de RFC 3986. –

+0

exactamente, ese era el punto aquí, gracias por dar más contexto – Abel

Cuestiones relacionadas