Johdanto Express.js:n Middlewareen
Pyyhkäise näyttääksesi valikon
Middleware-toimintojen ymmärtäminen
Middleware mahdollistaa pyyntöjen käsittelyn ennen kuin ne saavuttavat reittikäsittelijät. Se toimii suodattimena saapuville pyynnöille ja tarjoaa tavan suorittaa erilaisia tehtäviä pyyntö-vastaus-syklissä. Middleware-funktiot ottavat kolme argumenttia: pyyntöobjekti (req), vastausobjekti (res) ja next-funktio, jota käytetään siirtämään ohjaus seuraavalle middlewarelle ketjussa.
Kuvittele vesiputki, jonka läpi vesi virtaa. Vesi pumpataan putken toiseen päähän ja kulkee paineenmittareiden ja venttiilien, eli middleware-toimintojen, läpi ennen kuin se saavuttaa määränpäänsä – lasin. Tämän analogian keskeinen ajatus on, että näiden paineenmittareiden ja venttiilien järjestyksellä on merkitystä.
Samalla tavalla Express.js:n middleware-funktiot suoritetaan tietyssä järjestyksessä, joten middlewarejen rekisteröintijärjestys on ratkaisevan tärkeä sovelluksen toiminnallisuuden kannalta.
Middleware käytännössä
Lisätään oma middleware sovellukseemme ennen kuin kutsutaan mitään reittiä.
app.use((req, res, next) => {
console.log('Our middleware');
next();
});
Tämä funktio ei tee mitään muuta kuin päästää virran kulkemaan itsensä läpi, mutta viestimme ilmestyy aina konsoliin.
Tämä funktio ei suorita mitään erityistä tehtävää; se vain välittää virran itsensä läpi. Se kuitenkin havainnollistaa, miten middleware toimii Express.js-putkessa. Tässä esimerkissä aina, kun pyyntö tehdään Express.js-sovellukseemme, Our middleware tulostetaan konsoliin.
Middleware Tarkoitus
Middleware voi palvella useita tarkoituksia Express.js-sovelluksessa, mukaan lukien:
- Lokitus: Middleware voi kirjata pyynnön tietoja, kuten HTTP-metodin, URL-osoitteen ja aikaleiman, tarjoten näkymän palvelimesi käsittelemään liikenteeseen;
- Autentikointi: Middleware voi tarkistaa, onko käyttäjä todennettu ennen kuin sallii pääsyn tietyille reiteille. Tätä käytetään usein suojaamaan sovelluksen arkaluonteisia osia;
- Validointi: Middleware voi validoida pyyntödataa ennen sen käsittelyä. Esimerkiksi se voi tarkistaa, onko POST-pyynnössä lähetetty data oikeassa muodossa;
- Virheenkäsittely: Middleware voi siepata ja käsitellä virheitä, joita ilmenee pyynnön käsittelyn aikana. Tämä varmistaa, ettei sovelluksesi kaadu odottamattomien ongelmien ilmetessä;
- CORS (Cross-Origin Resource Sharing): Middleware voi lisätä CORS-otsakkeita vastauksiin, sallien tai estäen pyynnöt eri domaineista. Tämä on olennaista API:esi suojaamiseksi ja salliaksesi pääsyn eri alkuperistä isännöidyiltä verkkosivuilta.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme