html - uso - ¿link/href con solo parámetros(comenzando con el signo de interrogación) es válido?
signos de interrogacion y exclamacion para niños (2)
¿Este enlace es válido?
<a href="?lang=en">eng</a>
Sé que los navegadores lo tratan como se esperaba y sé que el enlace vacío también estaría bien , pero ¿está bien especificar solo los parámetros?
Tengo curiosidad porque el signo de interrogación ("?") Es solo una convención para la mayoría de los servidores HTTP (AFAIK), aunque admito que es el que prevalece.
Entonces, para recapitular:
¿Todos los navegadores interpretarán esto correctamente?
esto es en RFC?
¿puedo esperar algún problema al usar esto?
ACTUALIZACIÓN: la acción prevista al hacer clic es redirigir a la misma página, pero con diferentes parámetros GET ("lang = en" en el ejemplo anterior).
Sí lo es.
Puede encontrarlo en RFC 1808 - Localizadores de recursos uniformes relativos :
Dentro de un objeto con una URL base bien definida de
Base:<URL:http://a/b/c/d;p?q#f>
las URL relativas se resolverían de la siguiente manera:5.1. Ejemplos normales
?y
=<URL:http://a/b/c/d;p?y>
RFC 3986 - Identificador uniforme de recursos (URI): la sintaxis genérica reafirma lo mismo y agrega más detalles, incluida la gramática:
relative-ref = relative-part [ "?" query ] [ "#" fragment ]
relative-part = "//" authority path-abempty
/ path-absolute
/ path-noscheme
/ path-empty #; zero characters
Ahora bien, eso no quiere decir que todos los navegadores lo implementen de acuerdo con el estándar, pero parece que esto debería ser seguro.
Sí, y afectará a la URL actual con parámetros de lo que está pasando.
Es muy conveniente usarlo en situaciones en las que desee asegurarse de no cruzar el límite actual de la página / formulario y seguir ActionMethod
mismo ActionMethod
o lo que esté escuchando con diferentes parámetros.