URL encodée ne fonctionne pas
Je suis confus au sujet de Url codées.
Par exemple, quand j'écris mon navigateur:
stackoverflow.com/questions
Je parvenez à afficher la page.
Cependant, quand j'écris:
stackoverflow.com%2Fquestions
Je ne peux pas les voir.
Depuis %2F signifie "/", je veux comprendre pourquoi cela ne fonctionne pas correctement.
La raison pour laquelle je veux savoir, c'est que je suis une URL encodée et je ne sais pas comment je peut le décoder URL droite après je le recevoir afin de ne pas avoir une page d'erreur.
Je comprends tout à fait après la lecture de vos réponses. Ce que j'essaie de faire, c'est que je suis en train de passer une URL dans une chaîne de requête comme www.domain.com?retUrl=www.anotherdomain.com%3Fparameter%3D=value. En fait, je veux recevoir mes la valeur du paramètre dans anotherdomain.com. Est-il un moyen pour accomplir cette?
OriginalL'auteur Mikae | 2011-11-13
Vous devez vous connecter pour publier un commentaire.
La
/
est l'un despercent-encoding reserved characters
. Url utiliserpercent-encoding reserved characters
pour la définition de leur syntaxe. C'est seulement lorsque ces caractères ne sont pas utilisés dans leur rôle particulier à l'intérieur d'une URL, ils doivent être encodés.Pour cent de codage des caractères réservés:
Par exemple, vous pouvez passer
http://www.example.com/example/
àhttp://www.domain.com/page.php
en faisant ceci:http://www.domain.com/page.php?theURL=http%3A%2F%2Fwww.example.com%2Fexample%2F
.En fait, domain.com est un service que je n'ai aucun contrôle et http://www.example.com est quelque chose que je maîtrise. domain.com redirige le navigateur vers example.com. Et, je veux recevoir un paramètre de mon example.com page (www.example.com?parameter=value). C'est pourquoi je pensais de l'aide de l'URL de l'encodage/décodage. Avez-vous une idée de comment je peux procéder?
Je recommande fortement de commencer une nouvelle question à laquelle vous expliquez le problème ci-dessus (y compris exemple) et de mentionner le langage de programmation que vous utilisez. De cette façon, vous obtiendrez la meilleure réponse.
J'ai remarqué que votre nouvelle question, malheureusement, je n'ai aucune expérience avec Salesforce Apex. J'espère que quelqu'un d'autre peut vous aider!
OriginalL'auteur Anne
%2F
est un URL échappé/
. Cela signifie, traiter/
comme un personnage, pas un séparateur de répertoire.En essence, il est à la recherche d'un domaine
stackoverflow.com/questions
, pas le domainestackoverflow.com
avec le chemin d'accèsquestions
.OriginalL'auteur Oded
%2F est ce que vous écrivez lorsque vous souhaitez inclure un /dans un paramètre, mais ne veulent pas le navigateur pour accéder à un répertoire différent/route.
Donc, si vous aviez le chemin du fichier "root/sous-répertoire' passé comme un paramètre de chaîne de requête, vous souhaitez encoder que, comme:
http://www.testurl.com/page.php?path=root%2Fsubdirectory
plutôt que
http://www.testurl.com/page.php?path=root/subdirectory
OriginalL'auteur JHolyhead
L'encodage de l'URL est utilisée par exemple pour de l'encodage d'une chaîne de paramètre d'URL à venir à partir d'un formulaire HTML, qui contient des caractères spéciaux, comme des '/'. L'écriture "stackoverflow.com%2Fquestions" est faux, dans ce cas, le '/' est la partie de l'URL elle-même, et ne doit pas être codée.
OriginalL'auteur kol
%2F
est un caractère d'échappement de l'entité sens il serait inclus dans un nom, plutôt que le caractère/
, ce qui dénote une hiérarchie de répertoires, comme spécifié dans la RFC 1630, page 8.OriginalL'auteur Nightfirecat