WordPress REST API on rajapinta, joka mahdollistaa sivuston datan (kuten artikkelien, sivujen ja käyttäjien) lukemisen ja muokkaamisen JSON-muodossa. Se on avainasemassa nykyaikaisessa WordPress-kehityksessä, käytitpä sitten lohkomuokkainta (Gutenberg), ulkopuolisia integraatioita tai headless-ratkaisuja.
Sivustosi REST API löytyy oletuksena osoitteesta: https://esimerkki.fi/wp-json/
Välimuistitus ja REST API
Seravo käyttää tehokasta nginx-pohjaista HTTP-välimuistia. Tämä vaikuttaa REST API -kyselyihin seuraavasti:
Välimuistitus
Oletuksena API:n GET-pyynnöt tallentuvat välimuistiin suorituskyvyn parantamiseksi.
Välimuistin ohitus
Jos haluat varmistaa, että saat aina tuoreimman datan ohi välimuistin, lisää kyselyn perään parametri ?nocache=1. Tämä on erityisen hyödyllistä kehitysvaiheessa tai dynaamisissa sovelluksissa.
Päivitykset ja tyhjennys
Huomioithan, että artikkelin päivittäminen WordPressissä ei välttämättä tyhjennä REST API:n välimuistia automaattisesti. Tarvittaessa voit tyhjentää välimuistin manuaalisesti komentoriviltä komennolla wp-purge-cache tai Seravo Pluginin kautta.
Välimuistin toiminnan todentaminen
Voit tarkistaa, tuleeko vastaus välimuistista tarkastelemalla HTTP-vastauksen otsakkeita (headers) esimerkiksi curl-komennolla:
curl -I https://esimerkki.fi/wp-json/wp/v2/posts/123
Tarkista nämä otsakkeet:
x-proxy-cache: Jos arvona onHIT, vastaus tuli välimuistista. Jos arvo onMISStaiBYPASS(esim.?nocache=1parametrin kanssa), pyyntö meni suoraan WordPressille asti.Cache-Control: Tämä otsake määrittelee, miten vastausta saa tallentaa. Esimerkiksino-cache,no-storetaimax-age=0estävät välimuistiin tallennuksen.Pragma: Vanhempi otsake (useinno-cache), jota käytetään samankaltaiseen tarkoitukseen kuinCache-Control. Jos tämä on asetettu, se voi estää välimuistin toiminnan.
Huomio: Jos olet asettanut nämä otsakkeet manuaalisesti teemassasi tai lisäosassasi (esim. PHP:n header()-funktiolla), ne ohjaavat sitä, miten Seravon nginx-välimuisti käsittelee rajapintavastauksia.
REST API:n rajoittaminen ja tietoturva
Oletusarvoisesti monet päätepisteet ovat julkisia. Jos sivustosi sisältää herkkää tietoa, voit rajoittaa pääsyä rajapintaan koodilla tai lisäosilla. Huomioithan kuitenkin, että monet WordPressin sisäiset toiminnot tarvitsevat REST API:a toimiakseen oikein.
Autentikointi
Kun haluat muokata tietoa (kuten luoda uuden artikkelin), pyyntö on todennettava. Suositeltu tapa tähän on Sovellusten salasanat (Application Passwords).
Näin luot sovellussalasanan:
Kirjaudu WordPressin hallintaan ja mene kohtaan Käyttäjät > Profiili.
Vieritä alas kohtaan Sovellussalasanat.
Anna salasanalle nimi (esim. "Testi") ja klikkaa Lisää uusi sovellussalasana.
Ota saatu salasana talteen (muotoa
xxxx xxxx xxxx xxxx).
Käytä salasanaa pyynnön yhteydessä näin: -u "kayttajatunnus:xxxx xxxx xxxx xxxx"
Vianetsintä
401 Unauthorized
Sovellussalasana tai käyttäjätunnus on väärin, tai Authorization-otsake ei välity palvelimelle asti. Varmista, että käytät oikeaa käyttäjätunnusta (ei sähköpostiosoitetta) ja juuri luotua sovellussalasanaa.
404 Not Found
Varmista, että WordPressin osoiterakenne (Permalinks) on asetettu muuksi kuin Riisuttu. REST API:n standardiosoitteet (kuten /wp-json/) vaativat polkupohjaisen osoiterakenteen toimiakseen. Jos osoiterakennetta ei voida muuttaa, rajapintaa on kutsuttava muodossa /?rest_route=/.
403 Forbidden
Pyyntö estettiin puuttuvien oikeuksien tai tietoturvasuodattimen vuoksi.
Käyttöoikeudet: Varmista, että käyttäjällä on oikeus suorittaa kyseinen toiminto (esim. artikkelin muokkaus).
Sovelluspalomuuri (WAF): Seravon sovelluspalomuuri saattaa estää pyynnön, jos se tulkitaan haitalliseksi. Jos saat tämän virheen ilman selvää syytä, ota yhteyttä asiakaspalveluumme.
429 Too Many Requests
Olet tehnyt liian monta pyyntöä lyhyen ajan sisällä. Automaattinen suojaus rajoittaa pyyntöjen määrää suojellakseen sivustoa ylikuormitukselta. Jos integraatiosi vaatii suuria pyyntömääriä, ole yhteydessä asiakaspalveluumme rajojen tarkistamiseksi.
Lue lisää aiheesta
Jos haluat syventyä tarkemmin REST API:n tekniseen toteutukseen ja koodiesimerkkeihin, suosittelemme tutustumaan seuraaviin resursseihin:
WordPress Developer Resources – Virallinen tekninen dokumentaatio ja rajapintakuvaus.
Learn WordPress – Ohjevideoita ja kursseja REST API:n perusteista ja käytöstä.
Tarvitsetko apua?
Ota yhteyttä asiakaspalveluumme lähettämällä viestiä osoitteeseen [email protected].
