logo

Sådan får du domænenavn fra URL i JavaScript

Hvad er en URL?

EN URL er et andet navn for en web adresse . For eksempel er en ord-baseret URL Javatpoint.com. EN URL kan også oprettes ved hjælp af en IP-adresse (f. 192.168.2.24 ). De fleste forbrugere angiver navnets adresse, når de foretager en onlinesøgning, fordi navne er nemmere at huske end tal.

Webbrowsere bruger URL'er at bede webservere om bestemte sider. Nedenfor er en liste over en URL's syntaks og format .

Syntaks

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

Parametre

skema-

Typen af ​​internettjeneste er angivet (http eller https bruges generelt).

propositionel logik

Præfiks-

Den etablerer et domænepræfiks (www er standard for http).

Domæne-

længe at snore

Den diskuterer domænenavnet på internettet (f.eks. javatpoint.com ).

Havn -

Det identificerer porten på værten ( 80 er standard for http).

Sti -

Det skaber en sti på serversiden.

minimax algoritme

Filnavn -

Det identificerer en ressources eller dokuments navn.

Får domænenavnet fra en URL i javascript kan være en nyttig opgave af forskellige årsager, såsom at udtrække domænenavnet til webanalyse eller sikkerhedsformål. I dette svar vil vi undersøge forskellige måder at udtrække domænenavnet fra en URL i javascript sammen med deres fordele og ulemper.

1. Brug af window.location-objektet

Den mest ligetil måde at få domænenavnet fra en URL i javascript er at bruge window.location objekt , som giver oplysninger om den aktuelle URL. Det window.location.host ejendom giver os domænenavnet, inklusive portnummeret, hvis det er til stede. Her er et eksempel:

 Const domain = window.location.host; 

Denne tilgang har den fordel, at den er enkel og pålidelig. Det virker dog kun for den aktuelle URL, så hvis du skal udtrække domænenavnet fra en anden URL, skal du bruge en anden metode.

bash if-udsagn

2. Brug af URL-konstruktøren

En anden måde at udtrække domænenavnet fra en URL i javascript er at bruge URL-konstruktøren. Det er et indbygget javascript-objekt, der kan parse en URL-streng og give adgang til dens forskellige komponenter. Her er et eksempel:

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

URL-konstruktøren har den fordel, at den er i stand til at udtrække domænenavnet fra enhver gyldig URL, ikke kun den nuværende. Det er dog kun tilgængeligt i moderne browsere, så du skal tjekke, om det er understøttet, før du bruger det.

3. Brug af regulære udtryk

En mere avanceret tilgang til at udtrække domænenavnet fra en URL i javascript er at bruge regulære udtryk. Regulære udtryk er et kraftfuldt værktøj til mønstermatchning, og vi kan bruge dem til at udtrække domænenavnet fra en URL. Her er et eksempel:

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

Dette regulære udtryksmønster matcher domænenavnet i en URL og ignorerer protokollen ( http eller https ), brugernavn og adgangskode og sti. Det virker ved at lede efter den første forekomst af en sekvens af tegn, der ikke inkluderer et kolon, en skråstreg eller en ny linje, efterfulgt af en valgfri protokol, brugernavn og adgangskode og valgfri 'www.' præfiks. Matchmetoden returnerer et array, der indeholder hele matchet og eventuelle opfangede grupper, så vi skal udtrække det andet element (i indeks 1) for at få domænenavnet.

Denne tilgang har den fordel, at den er fleksibel og kan tilpasses til forskellige URL-formater, men den er også mere kompleks og udsat for fejl, hvis det regulære udtryksmønster ikke er præcist nok.

hvad er desktop ini

4. Brug af DOM

Endelig kan vi også udtrække domænenavnet fra en URL i javascript ved at bruge DOM . Vi kan skabe et skjult ankerelement, indstille dets href attribut til den URL, vi vil udtrække domænenavnet fra, og læs derefter hostname-egenskaben. Her er et eksempel:

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

Denne tilgang har den fordel, at den er nem at forstå og implementere, men den skaber også en DOM element , hvilket kan have nogle præstationsimplikationer, hvis du har brug for at gøre dette gentagne gange.

Konklusion

Der er forskellige måder at udtrække domænenavnet fra en URL i javascript, og den bedste tilgang afhænger af dine krav og begrænsninger. Hvis du kun skal udtrække domænenavnet fra den aktuelle URL, ved hjælp af window.location objekt er den enkleste og mest pålidelige metode.