URIError: mal formé URI de la séquence?
Le code ci-dessous l'erreur de sortir avec URIError: malformed URI sequence?
quand il y a un %
signe comme 60% - Completed
dans la chaîne de l'URL à partir de là que j'ai besoin d'extraire la valeur du paramètre par exemple http://some-external-server.com/info?progress=60%%20-%20Completed
<SCRIPT type="text/javascript">
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
</SCRIPT>
Je n'ai pas de contrôle du serveur et de la nécessité de traiter la sortie dans ma page html.
double possible de Javascript decodeURI(Composant) malformé uri exception
Double Possible de Pourquoi ne decodeURIComponent('%') de verrouillage de mon navigateur?
Double Possible de Pourquoi ne decodeURIComponent('%') de verrouillage de mon navigateur?
OriginalL'auteur Stacked | 2013-12-20
Vous devez vous connecter pour publier un commentaire.
Je pense que vous devez URI coder le signe de pourcentage que "%25'
[MODIFIER]
Je suppose que vous pourriez faire quelque chose comme ceci:
Vous ne pouvez pas être en mesure d'utiliser decodeURIComponent alors, ou vous pouvez avoir besoin pour prétraiter l'url avant de passer à cette fonction. Ce sont des espaces le seul autre caractère spécial, vous pouvez vous attendre dans l'url?
Non, il pourrait y avoir d'autres caractères spéciaux dans l'URL. Tout ce qui me laissait de l'extrait de valeur de paramètre dans cet état?
J'ai essayé de l'utiliser sur le
getParameterByName
fonction mais ne semble pas possible de le faire fonctionner. Pouvez-vous donner un exemple, dans le code ci-dessus du cadre pour un débutant.poste le code que vous avez essayé et je vais jeter un oeil.
OriginalL'auteur Slicedpan