Junior
Milliseid API-sid saab nimetada RESTful'ks?
sobes.tech AI
Vastus AI-lt
RESTful API vastab arhitektuuristiili põhimõtetele REST:
- Kliendi-server: Vastutuse jaotamine klientide, ressursite nõudmise ja serverite vahel, mis neid pakuvad.
- Stateless (Olekuvaba): Iga klienti serverile saadetud päring peab sisaldama kogu vajalikku teavet päringu töötlemiseks. Server ei hoia kliendi sessiooni olekut.
- Cacheable (Kohaldatav vahemällu): Server peab selgelt või kaudselt näitama, kas vastuseid võib klient või vahendajad vahemällu salvestada.
- Layered System (Kihiline süsteem): Klient ei saa eristada otse serveri väljakutset vahendajate (proksid, koormuse jaoturid jne) kaudu tehtud väljakutsetest.
- Code-On-Demand (Kood nõudmisel - valikuline): Server võib ajutiselt laiendada kliendi funktsionaalsust edastades täidetava koodi (nt JavaScript).
- Uniform Interface (Ühtne liides): RESTful API kõige olulisem põhimõte. See koosneb neljast piirangust:
- Resursside identifitseerimine: Ressursid identifitseeritakse URL-i kaudu.
- Resursside manipuleerimine esitluste kaudu: Klient suhtleb ressurssidega, saades nende esitlusi (nt JSON, XML).
- Enese kirjeldavad sõnumid: Iga sõnum sisaldab piisavalt teavet töötlemiseks, sealhulgas metaandmeid ja kuidas sõnumit ning ressurssi töödelda.
- HATEOAS (Hypermedia kui rakenduse oleku mootor): Server peab sisaldama hüperlinke oma vastustes, võimaldades kliendil avastada saadaolevad toimingud ja liikuda rakenduse olekute vahel. See on kõige vähem täidetav põhimõte.
RESTful API kasutab standardseid HTTP meetodeid (GET, POST, PUT, DELETE, PATCH) ressursside operatsioonide jaoks, mille identifikaatoriteks on URI.
Näiteks, GET-päring /api/users/123 saab kasutaja ID-ga 123 esitluse.