web-dev-qa-db-fra.com

Comment obtenir l'URL de la barre d'adresse du navigateur?

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é

13
Constructor

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é).

25
jwueller

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.

  1. href => Ceci retournera l'URL entière affichée dans la barre d'adresse.
  2. Host => Ceci renverra le nom d'hôte et le port de l'URL dans la barre d'adresse.
  3. hostname => Ceci ne renverra que le nom d'hôte de l'URL dans la barre d'adresse.
  4. port => Ceci ne renverra que le détail du port de l'URL dans la barre d'adresse.
  5. protocol => Ceci renverra le protocole de l'URL dans la barre d'adresse. Comme si l'URL utilise HTTP (sans SSL) ou HTTPS (avec SSL).
  6. chemin = = Ceci va retourner le chemin (valeur après le nom de domaine) de l'URL dans la barre d'adresse.
  7. hashpathname => Ceci renverra la partie ancre de l'URL, y compris hash singh (#).
  8. search => Ceci retournera la partie requête de l'URL comme la partie commencée par le point d'interrogation (?).
    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/

3
KARTHIKEYAN.A

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.

2
Pointy

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.

1
Chris Fletcher
javascript: alert(window.location.hostname);

Si vous souhaitez afficher le chemin, remplacez .hostname par .pathname.

0
sanders

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

0
Mark Ritterhoff