Je voulais faire quelques analyses de js, donc j’aurais besoin de savoir comment obtenir tout ce que l’utilisateur a entré dans la barre d’adresse sous forme de variable js afin de savoir quelles sont les erreurs d’orthographe les plus courantes. De cette façon, je peux faire des redirections vers les adresses correctes pour les fautes d'orthographe les plus courantes et réduire le nombre de demandes de 404 pages.
exemple de saisie de l'utilisateur dans le navigateur:
https://stackoverflow.com/questions
.........................................
J'ai essayé d'utiliser
document.location
mais cela indique sur quelle page l'utilisateur se trouve (c'est-à-dire l'adresse de la page 404), pas ce qu'il a tapé
Cela vous donne l'URL exacte sur laquelle l'utilisateur se trouve:
document.location.href
Il n'y a aucun moyen de déterminer ce que l'utilisateur a tapé avant que la demande ne soit soumise (pour des raisons de sécurité).
JavaScript vous propose de nombreuses méthodes pour afficher l'URL actuelle dans la barre d'adresse du navigateur Web. Vous pouvez utiliser la propriété de l'objet Location de l'objet Window pour obtenir ces détails.
console.log(' href => ' + window.location.href);
console.log(' Host => ' + window.location.Host);
console.log(' hostname => ' + window.location.hostname);
console.log(' port => ' + window.location.port);
console.log(' protocol => ' + window.location.protocol);
console.log(' pathname => ' + window.location.pathname);
console.log(' hashpathname => ' + window.location.hash);
console.log(' search=> ' + window.location.search);
référence: https://tecadmin.net/get-current-url-web-browser-using-javascript/
Vous devrez le faire sur le serveur, car c'est de là que provient la réponse 404 d'origine. Le serveur reçoit définitivement l'URL incorrecte. Il ne vous reste donc plus qu'à faire en sorte que votre serveur les conserve quelque part.
De nombreux systèmes de gestion de contenu conservent l'URL lorsque vous accédez à la page 404. Vous devriez donc pouvoir utiliser document.location.href
, puis consultez simplement les analyses sur la page d'erreur.
javascript: alert(window.location.hostname);
Si vous souhaitez afficher le chemin, remplacez .hostname
par .pathname
.
C'est un bon moyen d'obtenir l'adresse du lien de rechargement, s'il en existe une, qui devrait contenir l'URL saisie dans la barre d'adresse.
var arr = [], l = document.links;
for(var i=0; i<l.length; i++) {
arr.Push(l[i].href);
}
à partir de: https://stackoverflow.com/a/3871370/1188090