logo

Comment obtenir un nom de domaine à partir d'une URL en JavaScript

Qu'est-ce qu'une URL ?

UN URL est un autre nom pour un Adresse web . Par exemple, une URL basée sur des mots est Javatpoint.com. UN URL peut également être créé à l’aide d’une adresse IP (ex. 192.168.2.24 ). La plupart des consommateurs fournissent l'adresse du nom lorsqu'ils effectuent une recherche en ligne, car les noms sont plus faciles à retenir que les chiffres.

Les navigateurs Web utilisent URL pour demander aux serveurs Web des pages particulières. Vous trouverez ci-dessous une liste d'un Syntaxe de l'URL et format .

Syntaxe

 Scheme://prefix.domain:port/path/filename 

Paramètres

Schème-

Le type de service Internet est spécifié (http ou https est utilisé en général).

cartographie en dactylographié

Préfixe-

Il établit un préfixe de domaine (www est la valeur par défaut pour http).

Domaine-

Il traite du nom de domaine sur Internet (ex. javatpoint.com ).

Port -

Il identifie le port sur l'hôte ( 80 est la valeur par défaut pour http).

Chemin -

Cela crée un chemin côté serveur.

Nom de fichier -

Il identifie le nom d'une ressource ou d'un document.

instruction java if else

Obtenir le nom de domaine d'un URL dans javascript peut être une tâche utile pour diverses raisons, telles que l'extraction du nom de domaine à des fins d'analyse Web ou de sécurité. Dans cette réponse, nous explorerons différentes manières d'extraire le nom de domaine d'une URL en javascript, ainsi que leurs avantages et inconvénients.

1. Utilisation de l'objet window.location

Le moyen le plus simple d'obtenir le nom de domaine à partir d'une URL en javascript est d'utiliser le objet window.location , qui fournit des informations sur l'URL actuelle. Le fenêtre.emplacement.hôte property nous donne le nom de domaine, y compris le numéro de port s'il est présent. Voici un exemple :

 Const domain = window.location.host; 

Cette approche a l’avantage d’être simple et fiable. Cependant, cela ne fonctionne que pour l'URL actuelle, donc si vous devez extraire le nom de domaine d'une URL différente, vous devrez utiliser une méthode différente.

2. Utilisation du constructeur d'URL

Une autre façon d'extraire le nom de domaine d'une URL en javascript consiste à utiliser le constructeur d'URL. Il s'agit d'un objet javascript intégré qui peut analyser une chaîne d'URL et donner accès à ses différents composants. Voici un exemple :

 Consturl = new URL('https://www.example.com/path/to/file.html'); Const domain = url.hostname; 

Le constructeur d'URL a l'avantage de pouvoir extraire le nom de domaine de n'importe quelle URL valide, pas seulement de l'URL actuelle. Cependant, il n'est disponible que dans les navigateurs modernes, vous devrez donc vérifier s'il est pris en charge avant de l'utiliser.

3. Utiliser des expressions régulières

Une approche plus avancée pour extraire le nom de domaine d'une URL en javascript consiste à utiliser des expressions régulières. Les expressions régulières sont un outil puissant pour la correspondance de modèles et nous pouvons les utiliser pour extraire le nom de domaine d'une URL. Voici un exemple :

 Consturl = 'https://www.example.com/path/to/file.html'; Constdomain = url.match(/^(?:https?://)?(?:[^@
]+@)?(?:www.)?([^:/
]+)/im)[1]; 

Ce modèle d'expression régulière correspond au nom de domaine dans une URL, en ignorant le protocole ( http ou https ), nom d'utilisateur et mot de passe, ainsi que chemin. Il fonctionne en recherchant la première occurrence d'une séquence de caractères qui n'inclut pas de deux-points, de barre oblique ou de nouvelle ligne, précédée d'un protocole facultatif, d'un nom d'utilisateur et d'un mot de passe, et facultatif 'www.' préfixe. La méthode match renvoie un tableau contenant l'intégralité de la correspondance et tous les groupes capturés, nous devons donc extraire le deuxième élément (à l'index 1) pour obtenir le nom de domaine.

index de Java

Cette approche a l'avantage d'être flexible et adaptable à différents formats d'URL, mais elle est également plus complexe et sujette aux erreurs si le modèle d'expression régulière n'est pas assez précis.

4. Utiliser le DOM

Enfin, on peut également extraire le nom de domaine d'une URL en javascript en utilisant le DOMAINE . Nous pouvons créer un élément d'ancrage caché, définir son attribut href à l'URL à partir de laquelle nous voulons extraire le nom de domaine, puis lisez la propriété du nom d'hôte. Voici un exemple :

 Consturl = 'https://www.example.com/path/to/file.html'; Const a = document.createelement('a'); A.href = url; Const domain = a.hostname; 

Cette approche a l'avantage d'être facile à comprendre et à mettre en œuvre, mais elle crée également un Élément DOM , ce qui peut avoir des conséquences sur les performances si vous devez le faire à plusieurs reprises.

Conclusion

Il existe différentes manières d'extraire le nom de domaine d'une URL en javascript, et la meilleure approche dépend de vos besoins et contraintes. Si vous devez uniquement extraire le nom de domaine de l'URL actuelle, en utilisant le objet window.location est la méthode la plus simple et la plus fiable.