2011-11-15 7 views
54

Je suis en train de passer des paramètres à une URL qui ressemble à ceci:Comment encoder les paramètres d'URL?

http://www.foobar.com/foo?imageurl= 

et je veux transmettre les paramètres suchas et URL image qui est elle-même générée par une autre API, et le lien pour l'image se révèle comme:

http://www.image.com/?username=unknown&password=unknown 

Cependant, lorsque je tente d'utiliser l'URL:

http://www.foobar.com/foo?imageurl=http://www.image.com/?username=unknown&password=unknown 

il ne fonctionne pas ..

J'ai également essayé d'utiliser encodeURI et encodeURIComponents sur imageURL, et cela aussi ne fonctionne pas.

+0

Quelle langue génère l'URL? JavaScript? – Phil

+0

Javascript, oui –

Répondre

96

Avec PHP

echo urlencode("http://www.image.com/?username=unknown&password=unknown"); 

Résultat

http%3A%2F%2Fwww.image.com%2F%3Fusername%3Dunknown%26password%3Dunknown 

Avec Javascript:

var myUrl = "http://www.image.com/?username=unknown&password=unknown"; 
var encodedURL= "http://www.foobar.com/foo?imageurl=" + encodeURIComponent(myUrl); 

DEMO: http://jsfiddle.net/Lpv53/