Sobes.tech
Junior — Middle

Vai vari paskaidrot REST arhitektūras pamatprincipus un kā tie tiek īstenoti API izstrādē?

sobes.tech AI

Atbilde no AI

REST (Reprezentatīvā stāvokļa pārnešana) ir arhitektūras stils, kas tiek izmantots tīmekļa pakalpojumu izveidei, balstoties uz vairākām principiem:

  • Klients-servera arhitektūra: klients un serveris ir atdalīti, tas atvieglo izstrādi un mērogošanu.
  • Bez stāvokļa (stateless): katrs pieprasījums no klienta uz serveri ir jāiekļauj ar visu nepieciešamo informāciju, serveris nesaglabā stāvokli starp pieprasījumiem.
  • Kešošana: atbildes var tikt kešotas, lai uzlabotu veiktspēju.
  • Vienota saskarne: izmanto standarta HTTP metodes (GET, POST, PUT, DELETE) operācijām ar resursiem.
  • Resursu identificēšana caur URI: katram resursam ir unikāla adrese.
  • Daudzslāņu sistēma: arhitektūra var sastāvēt no vairākiem līmeņiem, piemēram, starpniekserveriem, vārtiem.

REST API izstrādē šie principi tiek īstenoti šādi:

  • Resursi (piemēram, lietotāji, produkti) tiek attēloti ar URL, piemēram, /users/123.
  • Tiek izmantotas HTTP metodes: GET, lai saņemtu, POST, lai izveidotu, PUT/PATCH, lai atjauninātu, DELETE, lai dzēstu.
  • Serveris nesaglabā sesijas, visi dati, kas nepieciešami pieprasījuma apstrādei, tiek nodoti ar to.
  • Atbildes var saturēt galvenes kešošanai.
  • Datu formāti parasti ir JSON vai XML.

Piemērs pieprasījumam, lai saņemtu lietotāju:

GET /users/123 HTTP/1.1
Host: example.com
Accept: application/json

Atbilde:

{
  "id": 123,
  "name": "Ivan Ivanov"
}