logo

Hvordan få domenenavn fra URL i JavaScript

Hva er en URL?

EN URL er et annet navn for en nettadresse . For eksempel er en ordbasert URL Javatpoint.com. EN URL kan også opprettes ved hjelp av en IP-adresse (f.eks. 192.168.2.24 ). De fleste forbrukere oppgir navnets adresse når de utfører et nettsøk fordi navn er lettere å huske enn tall.

Nettlesere bruker URL-er å spørre webservere om bestemte sider. Nedenfor er en liste over en URLs syntaks og format .

Syntaks

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

Parametere

Opplegg-

Typen Internett-tjeneste er spesifisert (http eller https brukes generelt).

python eller

Prefiks-

Den etablerer et domeneprefiks (www er standard for http).

Domene-

lenge å strenge

Den diskuterer domenenavnet på internett (f.eks. javatpoint.com ).

Havn -

Den identifiserer porten på verten ( 80 er standard for http).

Bane -

Det skaper en bane på serversiden.

snu strengen i java

Filnavn -

Den identifiserer navnet på en ressurs eller et dokument.

Får domenenavnet fra en URL i javascript kan være en nyttig oppgave av ulike årsaker, for eksempel å trekke ut domenenavnet for nettanalyse eller sikkerhetsformål. I dette svaret vil vi utforske forskjellige måter å trekke ut domenenavnet fra en URL i javascript, sammen med deres fordeler og ulemper.

1. Bruke window.location-objektet

Den enkleste måten å få domenenavnet fra en URL i javascript er å bruke window.location objekt , som gir informasjon om gjeldende URL. De window.location.host egenskapen gir oss domenenavnet, inkludert portnummeret hvis det finnes. Her er et eksempel:

 Const domain = window.location.host; 

Denne tilnærmingen har fordelen av å være enkel og pålitelig. Det fungerer imidlertid bare for gjeldende URL, så hvis du trenger å trekke ut domenenavnet fra en annen URL, må du bruke en annen metode.

java-operatør

2. Bruke URL-konstruktøren

En annen måte å trekke ut domenenavnet fra en URL i javascript er å bruke URL-konstruktøren. Det er et innebygd javascript-objekt som kan analysere en URL-streng og gi tilgang til de ulike komponentene. Her er et eksempel:

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

URL-konstruktøren har fordelen av å kunne trekke ut domenenavnet fra en hvilken som helst gyldig URL, ikke bare den nåværende. Den er imidlertid bare tilgjengelig i moderne nettlesere, så du må sjekke om den støttes før du bruker den.

3. Bruke regulære uttrykk

En mer avansert tilnærming for å trekke ut domenenavnet fra en URL i javascript er å bruke regulære uttrykk. Regulære uttrykk er et kraftig verktøy for mønstermatching, og vi kan bruke dem til å trekke ut domenenavnet 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 uttrykksmønsteret samsvarer med domenenavnet i en URL, og ignorerer protokollen ( http eller https ), brukernavn og passord og bane. Det fungerer ved å se etter den første forekomsten av en sekvens av tegn som ikke inkluderer et kolon, en skråstrek eller en ny linje, etterfulgt av en valgfri protokoll, brukernavn og passord, og valgfritt 'www.' prefiks. Matchmetoden returnerer en matrise som inneholder hele samsvaret og eventuelle fangede grupper, så vi må trekke ut det andre elementet (i indeks 1) for å få domenenavnet.

Denne tilnærmingen har fordelen av å være fleksibel og tilpasses forskjellige URL-formater, men den er også mer kompleks og utsatt for feil hvis det regulære uttrykksmønsteret ikke er presist nok.

hva er desktop ini

4. Bruke DOM

Til slutt kan vi også trekke ut domenenavnet fra en URL i javascript ved å bruke DOM . Vi kan lage et skjult ankerelement, sette det href-attributt til URL-en vi ønsker å trekke ut domenenavnet fra, og les deretter vertsnavnegenskapen. 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 tilnærmingen har fordelen av å være enkel å forstå og implementere, men den skaper også en DOM-element , som kan ha noen ytelsesimplikasjoner hvis du trenger å gjøre dette gjentatte ganger.

Konklusjon

Det er forskjellige måter å trekke ut domenenavnet fra en URL i javascript, og den beste tilnærmingen avhenger av dine krav og begrensninger. Hvis du bare trenger å trekke ut domenenavnet fra gjeldende URL, ved å bruke window.location objekt er den enkleste og mest pålitelige metoden.