Sobes.tech
Junior

Kas ir REST orientētā arhitektūra (ROA)?

sobes.tech AI

Atbilde no AI

REST orientētā arhitektūra (Representational State Transfer) ir arhitektūras stils sadalītām sistēmām, balstīts uz principiem, kas nosaka, kā tiek identificēti resursi un kā notiek mijiedarbība starp klientu un serveri.

REST galvenie principi:

  1. Klients-serveris (Client-Server): atbildības jomu sadalījums. Klients rūpējas par lietotāja saskarni, serveris — par datu glabāšanu un apstrādi.
  2. Bez stāvokļa (Stateless): katrs pieprasījums no klienta uz serveri jāietver visa nepieciešamā informācija tā apstrādei. Serveris nesaglabā klienta stāvokli starp pieprasījumiem.
  3. Kešatmiņā ievietojams (Cacheable): klienti un starpnieki var kešatminēt servera atbildes, lai uzlabotu veiktspēju un mērogojamību.
  4. Vienota saskarne (Uniform Interface):
    • Resursu identifikācija (Identification of resources): resursi ir unikāli identificējami caur URL.
    • Resursu manipulācija caur reprezentācijām (Manipulation of resources through representations): klients var manipulēt ar resursiem, izmantojot to reprezentāciju (piemēram, JSON, XML).
    • Pašaprakstām ziņojumiem (Self-descriptive messages): katrs ziņojums satur pietiekami daudz informācijas, lai to varētu apstrādāt.
    • Hipermedija kā lietojumprogrammas stāvokļa dzinējs (Hypermedia as the Engine of Application State - HATEOAS): klients mijiedarbojas tikai caur servera atbildēs sniegtajām hiper saites.
  5. Slāņota sistēma (Layered System): sistēma var būt organizēta slāņos (piemēram, starpnieki, vārti), un katrs komponenta redz tikai nākamo slāni, ar kuru tas mijiedarbojas.
  6. Kods pēc pieprasījuma (Code-On-Demand - izvēles): serveris var pagaidu paplašināt klienta funkcionalitāti, pārsūtot izpildāmo kodu (piemēram, JavaScript).

QA testēšanā REST API ietver šo principu atbilstības pārbaudi, kā arī:

  • Funkcionālo testu (HTTP metodes GET, POST, PUT, DELETE).
  • Noslodzes testu.
  • Drošības testu.
  • Saderības testu (dažādi datu formāti, klienti).