Je suis tombé sur l'URL suivante aujourd'hui:
http://www.sfgate.com/cgi-bin/blogs/inmarin/detail??blogid=122&entry_id=64497
Notez le point d'interrogation doublé au début de la chaîne de requête:
??blogid=122&entry_id=64497
Mon navigateur ne semble pas avoir de problème avec cela et exécute un petit bookmarklet:
javascript:alert(document.location.search);
vient de me donner la chaîne de requête ci-dessus.
Est-ce une URL valide? La raison pour laquelle je suis si pédant (en supposant que je le suis) est que je dois analyser des URL comme celle-ci pour les paramètres de requête, et que la prise en charge des points d'interrogation doublés nécessiterait des modifications de mon code. Évidemment, s'ils sont dans la nature, je devrai les soutenir; Je suis principalement curieux de savoir si c'est ma faute pour ne pas adhérer exactement aux normes d'URL, ou s'il s'agit en fait d'une URL non standard.
indexOf()
pour localiser le point d'interrogation, donc il a pris la position de la première occurrence. Ensuite, je divise les query_parameters à chacun&
, puis leurs paires nom / valeur à chacun=
.