logo

Kuinka saada verkkotunnus URL-osoitteesta JavaScriptissä

Mikä on URL-osoite?

A URL-osoite on toinen nimi a:lle nettiosoite . Esimerkiksi sanapohjainen URL-osoite on Javapoint.com. A URL-osoite voidaan luoda myös käyttämällä IP-osoitetta (esim. 192.168.2.24 ). Useimmat kuluttajat ilmoittavat nimen osoitteen tehdessään verkkohakua, koska nimet ovat helpompi muistaa kuin numerot.

Web-selaimet käyttävät URL-osoitteet kysyäksesi tiettyjä sivuja verkkopalvelimista. Alla on luettelo a URL-osoitteen syntaksi ja muoto .

Syntaksi

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

Parametrit

Kaava-

Internet-palvelun tyyppi on määritetty (yleensä käytetään http tai https).

Etuliite-

Se määrittää verkkotunnuksen etuliitteen (www on http:n oletusarvo).

Domain-

Se käsittelee verkkotunnuksen nimeä Internetissä (esim. javatpoint.com ).

Portti -

Se tunnistaa isäntäkoneen portin ( 80 on oletusarvo http).

Polku -

Se luo polun palvelinpuolelle.

Tiedoston nimi -

Se tunnistaa resurssin tai asiakirjan nimen.

Verkkotunnuksen saaminen osoitteesta a URL-osoite sisään javascript voi olla hyödyllinen tehtävä useista syistä, kuten verkkotunnuksen poimiminen verkkoanalytiikkaa tai tietoturvaa varten. Tässä vastauksessa tutkimme erilaisia ​​tapoja poimia verkkotunnuksen nimi URL-osoitteesta javascriptissä sekä niiden edut ja haitat.

1. window.location-objektin käyttäminen

Yksinkertaisin tapa saada verkkotunnuksen nimi URL-osoitteesta javascriptissä on käyttää window.location -objekti , joka tarjoaa tietoja nykyisestä URL-osoitteesta. The window.location.host ominaisuus antaa meille verkkotunnuksen nimen, mukaan lukien porttinumeron, jos se on olemassa. Tässä on esimerkki:

 Const domain = window.location.host; 

Tämän lähestymistavan etuna on yksinkertainen ja luotettava. Se toimii kuitenkin vain nykyiselle URL-osoitteelle, joten jos sinun on poimittava verkkotunnuksen nimi toisesta URL-osoitteesta, sinun on käytettävä eri menetelmää.

2. URL-muodostimen käyttäminen

Toinen tapa poimia verkkotunnuksen nimi URL-osoitteesta javascriptissä on käyttää URL-konstruktoria. Se on sisäänrakennettu JavaScript-objekti, joka voi jäsentää URL-merkkijonon ja antaa pääsyn sen eri komponentteihin. Tässä on esimerkki:

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

URL-muodossa on se etu, että se pystyy poimimaan verkkotunnuksen mistä tahansa kelvollisesta URL-osoitteesta, ei vain nykyisestä. Se on kuitenkin saatavilla vain nykyaikaisissa selaimissa, joten sinun on tarkistettava, onko sitä tuettu ennen kuin käytät sitä.

3. Säännöllisten lausekkeiden käyttäminen

Edistyneempi tapa poimia verkkotunnuksen nimi URL-osoitteesta JavaScriptissä on käyttää säännöllisiä lausekkeita. Säännölliset lausekkeet ovat tehokas työkalu mallien täsmäämiseen, ja voimme käyttää niitä verkkotunnuksen poimimiseen URL-osoitteesta. Tässä on esimerkki:

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

Tämä säännöllinen lausekemalli vastaa URL-osoitteen verkkotunnuksen nimeä jättäen huomioimatta protokollan ( http tai https ), käyttäjätunnus ja salasana sekä polku. Se toimii etsimällä ensimmäistä merkkijonoa, joka ei sisällä kaksoispistettä, kauttaviivaa tai rivinvaihtoa ja jota edeltää valinnainen protokolla, käyttäjätunnus ja salasana sekä valinnainen 'www.' etuliite. Vastaavuusmenetelmä palauttaa taulukon, joka sisältää koko vastaavuuden ja kaikki siepatut ryhmät, joten meidän on purettava toinen kohde (hakemistossa 1) saadaksemme verkkotunnuksen nimen.

Tämän lähestymistavan etuna on, että se on joustava ja mukautuva eri URL-muotoihin, mutta se on myös monimutkaisempi ja altis virheille, jos säännöllisen lausekkeen malli ei ole riittävän tarkka.

Luo satunnaisluku javassa

4. DOM:n käyttäminen

Lopuksi voimme myös poimia verkkotunnuksen URL-osoitteesta javascriptissä käyttämällä DOM . Voimme luoda piilotetun ankkurielementin, asettaa sen href -attribuutti URL-osoitteeseen, josta haluamme poimia verkkotunnuksen, ja lue sitten isäntänimi-ominaisuus. Tässä on esimerkki:

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

Tämän lähestymistavan etuna on, että se on helppo ymmärtää ja toteuttaa, mutta se luo myös a DOM-elementti , jolla voi olla vaikutuksia suorituskykyyn, jos sinun on tehtävä tämä toistuvasti.

Johtopäätös

On olemassa erilaisia ​​tapoja poimia verkkotunnuksen nimi URL-osoitteesta javascriptissä, ja paras tapa riippuu tarpeistasi ja rajoituksistasi. Jos tarvitset vain verkkotunnuksen poimia nykyisestä URL-osoitteesta, käytä window.location -objekti on yksinkertaisin ja luotettavin menetelmä.