Je l'avais fait avant avec javascript, je pense, mais je ne me souviens pas comment maintenant. J'ai une URL comme http://www.example.com/cow.php?says=moo et je veux obtenir le "moo" de celui-ci.Comment obtenez-vous une requête GET à partir d'une URL?
Répondre
ici est une fonction qui retourne un tableau de variables de l'URL
function getUrlVars()
{
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
Son appelé chaîne de requête et cette page a une bonne explication. http://ilovethecode.com/Javascript/Javascript-Tutorials-How_To-Easy/Get_Query_String_Using_Javascript.shtml
JavaScript n'a pas de façon native de le faire. La plupart des fonctions que j'ai vues impliquent de passer le nom du paramètre que vous recherchez, puis d'utiliser RegEx pour l'obtenir à partir de l'URL. Utilisation de la fonction de:
Get URL Parameters using JavaScript
Votre code ressemblerait à ceci:
var saysVal = gup('says');
This est un URI autonome bibliothèque analyse syntaxique qui peut gérer toute URI que vous pouvez imaginer (selon l'auteur) et permet vous de travailler avec URI comme vous le feriez d'un objet JS (ce qui est agréable)
Exemples:
uri = new jsUri('http://user:[email protected]:81/index.html?q=books#fragment');
uri.protocol(); // http
uri.userInfo(); // user:pass
uri.host(); // www.test.com
uri.port(); // 81
uri.path(); // /index.html
uri.query(); // q=books
uri.anchor(); // fragment
Si vous utilisez jQuery il y a un plugin pour cela:
https://github.com/allmarkedup/jQuery-URL-Parser
Son utilisation est assez facile aussi.
Si vous voulez récupérer la chaîne de requête de l'URL actuelle:
jQuery.url.attr("query")
Si vous voulez récupérer la chaîne de requête à partir d'une autre URL:
jQuery.url.setUrl("http://example.com?id=123").attr("query")
Le plugin peut également être utilisé pour analyser d'autres parties d'un URI telles que:
-
Protocole
- (http, https, ...)
- hôte
- ancre
etc ..
- Christian
Il est appelé querystring. – SLaks