RFC1808 no define el formato interno de la cadena de consulta. Creo que el punto y coma 1808 está hablando de información adicional de un tipo diferente (en rutas), que en la práctica nunca se usa. Por lo que puedo ver, la interfaz NSURL no incluye ningún método que se ocupe de analizar/dividir los contenidos de la cadena de consulta en sí, por lo que esto no interesa a la clase y, de hecho, su URL cumple con 1808.
En realidad, las cadenas de consulta no tienen inherentemente ningún formato definido por RFC; perfectamente puede poner cualquier cadena en ellos y recuperarlos intactos en el lado del servidor. Sin embargo, el estándar HTML describe una forma de crear cadenas de consulta a partir de los contenidos del formulario, y este formato application/x-www-form-urlencoded
es utilizado por la mayoría de los scripts del lado del servidor.
De acuerdo con la sección 17.13.4.1 HTML 4, es &
los navegadores parámetro de separación del mosto usar para crear cadenas de consulta de múltiples parámetros, de modo que sí, que debe ser compatible con el símbolo de unión como un separador de parámetros. HTML4 recomienda que las secuencias de comandos del lado del servidor acepten el punto y coma como un separador alternativo al signo en cadenas de consulta, ya que eso evita más escapes. Pero no lo requiere, y de hecho (desafortunadamente) muchos entornos de servidor/lectura de formularios no aceptan el punto y coma para este propósito.
muy útil ... ¡gracias! Es difícil ** buscar ** estas cosas en la Web porque cada URL "acertada" de una forma u otra. – Meltemi