Blog o spletnem programiranju in elektroniki
💬 👤
back Nazaj na blog
WEB (HTML, CSS, PHP)

Kaj je REST API in kako omogoča povezovanje aplikacij

V sodobnem spletnem razvoju se podatkovni del (backend) in uporabniški vmesnik (frontend ali mobilna aplikacija) pogosto gradita ločeno. Da lahko te komponente med seboj nemoteno izmenjujejo podatke, potrebujemo standardiziran vmesnik. Tukaj nastopi REST API – nabor pravil in konvencij, ki omogoča varno, stabilno in pregledno komunikacijo med različnimi sistemi preko protokola HTTP.

Kaj pomeni kratica REST in kako deluje?

REST je kratica za Representational State Transfer. Osnovna ideja REST arhitekture je, da vsak podatek (uporabnik, izdelek, naročilo) obravnavamo kot vir (resource), do katerega dostopamo preko edinstvenega URL naslova in standardnih HTTP metod.

HTTP Metoda CRUD Operacija Opis in primer URL naslova
GET Read (Branje) Pridobivanje podatkov (npr. GET /api/products)
POST Create (Ustvarjanje) Dodajanje novega vira (npr. POST /api/products)
PUT / PATCH Update (Posodabljanje) Spreminjanje obstoječega vira (npr. PUT /api/products/42)
DELETE Delete (Brisanje) Odstranitev vira iz baze (npr. DELETE /api/products/42)

Glavna načela REST arhitekture

Da lahko vmesnik imenujemo RESTful, mora slediti nekaterim ključnim arhitekturnim smernicam.

  1. Brezstanstvenost (Stateless): Strežnik ne shranjuje stanja uporabnikove seje. Vsaka zahteva mora vsebovati vse podatke, ki so potrebni za njeno obdelavo (npr. avtentikacijski žeton).
  2. Ločitev odjemalca in strežnika (Client-Server): Uporabniški vmesnik in podatkovna baza sta popolnoma neodvisna. Lahko zamenjamo celoten frontend, ne da bi posegali v backend.
  3. Uporaba standardnih formatov: Podatki se najpogosteje prenašajo v lahkem in preglednem formatu JSON.

Primer odgovora REST API v formatu JSON

Ko odjemalec pošlje HTTP GET zahtevo na naslov za pridobitev podatkov o izdelku, REST API vrne odgovor z ustrezno HTTP statusno kodo (npr. 200 OK) in podatki v formatu JSON.

// HTTP GET /api/v1/products/105
// Status: 200 OK

{
  "status": "success",
  "data": {
    "id": 105,
    "name": "Arduino Uno R3 Kit",
    "price": 24.90,
    "currency": "EUR",
    "in_stock": true,
    "tags": ["arduino", "elektronika", "začetniški"]
  }
}

Uporaba REST API v praksi in pri IoT napravah

REST API ni namenjen le povezovanju spletnih strani. Izjemno uporaben je tudi pri mikrokrmilnikih, kot sta ESP32 ali ESP8266. Vaš Arduino projekt lahko pošilja meritve senzorjev (npr. temperaturo ali vlago) neposredno na vaš REST API v PHP-ju, ki podatke zapiše v bazo ter jih prikaže na spletnem portfelju.

back Nazaj na blog