A RESTful API(Representational State Transfer) yra architektūros ir protokolo tipas, skirtas projektuoti ir valdyti taikomųjų programų sąsajas(API) paskirstytose sistemose. RESTful API yra sukurtas remiantis pagrindiniais architektūros principais REST – metodą, kurį aprašė Roy Fielding savo 2000 m. disertacijoje.
Pagrindinės savybės RESTful API apima:
Prieiga pagal adresą
Kiekvienas išteklius nurodo URL(vienodą išteklių lokatorių), leidžiantį sistemoms susisiekti per HTTP užklausas, tokias kaip GET, POST, PUT ir DELETE.
Prieiga be pilietybės
Kiekvienoje kliento užklausoje yra pakankamai informacijos, kad serveris suprastų užklausą nesiremdamas ankstesne būsenos informacija. Serveris nesaugo informacijos apie kliento būseną tarp užklausų.
HTTP metodo naudojimas
RESTful API naudoja HTTP metodus(GET, POST, PUT, DELETE), kad nustatytų kiekvienos užklausos tikslą. Pavyzdžiui, naudokite GET informacijai gauti, POST naujiems duomenims kurti, PUT, jei norite atnaujinti, ir DELETE, kad pašalintumėte.
Žiniasklaidos tipų naudojimas
Duomenys tinkle perduodami naudojant tokius formatus kaip JSON, XML ar kitus pasirinktinius formatus. Kiekvienoje užklausoje reikia nurodyti pageidaujamą duomenų formatą.
Išteklių identifikavimas
Ištekliai identifikuojami pagal unikalius URL, leidžiančius klientams pasiekti išteklius naudojant kelio identifikatorius.
Talpinama talpykloje
Užklausos ir atsakymai iš a RESTful API gali būti saugomi kliento arba tarpinio serverio atmintyje, kad būtų optimizuotas našumas.
Sluoksniuota sistema
Architektūra REST leidžia pridėti tarpinius sluoksnius, pvz., apkrovos balansavimo priemones arba tarpinius serverius, kad būtų padidintas mastelio keitimas ir valdymas.
RESTful API plačiai naudojamos kuriant žiniatinklio ir mobiliąsias programas, leidžiančias efektyviai bendrauti ir dalytis duomenimis tarp programų. Pagrindinės žiniatinklio paslaugos, tokios kaip „Facebook“, „Twitter“ ir „Google“, taip pat naudoja RESTful architektūrą, kad teiktų API kūrėjams.