J'ai reçu des plaintes selon lesquelles les liens générés par mon logiciel ne suivent pas les spécifications d'URL du W3C. http://www.w3.org/Addressing/URL/url-spec.txt
Les liens générés ressemblent à ceci: https://organization.proxive.se/proxive/https://www.google.com/
Le logiciel est un proxy et génère les liens de cette manière afin que le proxy ne doive pas analyser les liens relatifs. Exemples: /maps/
, ../relative_link
.
L'utilisation d'une solution qui utilise query-string ne le permettrait pas.
Est-ce que mon utilisation de la construction de l'URL est correcte ou dois-je URL encoder tout après /proxive/
?
Je peux ajouter que ma solution fonctionne dans tous les principaux navigateurs.
Il semble que la seule chose que vous voudriez besoin pour vous échapper dans cette URL serait le :
https://organization.proxive.se/proxive/https%3A//www.google.com/
Dans ce cas, votre URL n'utilisera aucun caractère non autorisé et les répertoires resteront sur la sous-URL pour prendre en charge certains liens relatifs.
Je veux juste souligner que pas tous les liens relatifs fonctionneront. En général, je code mes sites avec lesquels travailler relatif site URL comme /img/logo.png
Lorsqu'il est utilisé sur http://example.com/dir/page.html
, l'URL relative http://example.com/img/logo.png
sera récupérée.
Donc, dans votre cas, si vous tentiez de créer un proxy http://example.com/dir/page.html
, vous finirez par aller chercher https://organization.proxive.se/img/logo.png