Hoy encontré la siguiente URL:
http://www.sfgate.com/cgi-bin/blogs/inmarin/detail??blogid=122&entry_id=64497
Observe el signo de interrogación duplicado al principio de la cadena de consulta:
??blogid=122&entry_id=64497
Mi navegador no parecía tener ningún problema con él y ejecutaba un marcador rápido:
javascript:alert(document.location.search);
me acaba de dar la cadena de consulta que se muestra arriba.
¿Es esta una URL válida? La razón por la que soy tan pedante (suponiendo que lo sea) es porque necesito analizar URL como esta para los parámetros de consulta, y admitir signos de interrogación duplicados requeriría algunos cambios en mi código. Obviamente, si están en la naturaleza, tendré que apoyarlos; Principalmente tengo curiosidad por saber si es culpa mía por no cumplir exactamente con los estándares de URL, o si de hecho es una URL no estándar.
indexOf()
para localizar el signo de interrogación, por lo que tomó la posición de la primera aparición. Luego estoy dividiendo los query_parameters en cada uno&
y luego sus pares de nombre / valor en cada uno=
.