REST API - Kaj je to? REST: prevod. Predstavniški prenos države

REST API (predstavniški državni prenos) ali spletne storitve RESTful - Kaj je to? REST v prevodu v angleščino "reprezentativni prenos države". To je način zagotavljanja interoperabilnosti med računalniškimi sistemi na internetu. Spletne storitve, ki so skladne s standardom REST in omogočajo sistemskim poizvedbam dostop do spletnih pogledov na spletni strani in upravljanje z njimi z uporabo enotnega, standardnega niza operacij. Obstajajo tudi druge oblike spletnih storitev, ki vključujejo lasten poljuben nabor operacij, kot sta WSDL in SOAP.


REST API: Kaj je to? Opredelitev koncepta

Spletni viri so bili prvotno opredeljeni na svetovnem spletu kot dokumenti ali datoteke, ki so jih identificirali njihovi URL-ji. Danes imajo veliko bolj splošno in abstraktno definicijo, ki zajema vsako temo ali entiteto, ki jo je mogoče identificirati, poimenovati, nasloviti ali obdelati na spletu. Zahteve za spletne storitve REST API, ki so zastrupljene z virom URI, generirajo odgovor, ki se lahko izvede v XML, HTML, JSON ali v kakšni drugi obliki. Odgovor lahko potrdi, da so bile v shranjenem viru narejene nekatere spremembe, kakor tudi hipertekstne povezave do drugih virov in njihovih zbirk. Uporaba HTTP kot najpogostejšega protokola se nanaša na vrste razpoložljivih operacij, ki jih povzročajo ukazi PUT, DELETE, HTTP GET, POST. Z uporabo protokolov, ne glede na stanje in standardne operacije, so sistemi REST usmerjeni v hitro delovanje, zanesljivost in zmožnost rasti s ponovno uporabo komponent, ki jih je mogoče upravljati inki se lahko posodobi brez vpliva na sistem kot celoto. Uporaba REST-a je pogosto boljša od sloga SOAP (Simple Object Access Protocol), saj REST ne uporablja pasovne širine, zaradi česar je bolj primeren za uporabo na internetu. Za pristop SOAP je potrebno posneti ali uporabiti strežniški program (za vzdrževanje podatkov) in program odjemalca (za podatkovno poizvedbo).


Zgodovina tehnologije

Izraz "reprezentativni prenos države" je leta 2000 predstavil in opredelil Roy Fielding v svoji disertaciji "Arhitekturni slogi in oblikovanje mrežnih arhitektur programske opreme". Arhitekturni slog REST je razvil vzporedno z HTTP 111996-1999, ki temelji na obstoječem HTTP projektu 101996. V retrospektivnem pogledu na razvoj tehnologije je Fielding dejal, da je bil med procesom standardizacije HTTP pozvan, da zaščiti izbiro oblikovanja na internetu. To je zelo težka naloga v okviru procesa, sprejemanje predlogov kogarkoli na to temo, ki hitro postane središče celotne industrije. Fielding je imel pripombe več kot 500 razvijalcev, od katerih so mnogi odlični inženirji z dolgoletnimi izkušnjami. Vse je moral razložiti, začenši z najbolj abstraktnimi koncepti spletne interakcije in dokončanjem natančnih podrobnosti sintakse HTTP. Ta proces je svoj model izostril na osnovni nabor načel, lastnosti in omejitev, ki se zdaj imenujejo REST.

Prednosti

Značilnosti stila REST vplivajo na naslednje arhitekturne lastnosti:
  • Produktivnost - Interakcijakomponent je prevladujoča značilnost uporabniškega dojemanja učinkovitosti in zmogljivosti omrežja.
  • Razširljivost za podporo največjemu številu komponent, preskušanju API-ja REST in interakciji z njimi.
  • Enostavnost enotnega vmesnika in odobritev API-ja REST.
  • Možnost spreminjanja sestavnih delov, ki ustrezajo spreminjajočim se potrebam (tudi pri izvajanju programa).
  • Vidnost povezave med sestavnimi deli in storilci.
  • Sposobnost prenosa komponent s premikanjem programske kode s podatki.
  • Zanesljivost - visoka toleranca napak v prisotnosti napak v sestavi, priključkih ali podatkih.
  • Porazdelitev težav med strankami je posledica dejstva, da ta REST API omogoča poenostavitev izvajanja komponent, zmanjšuje kompleksnost semantike priključkov, izboljšuje učinkovitost prilagajanja produktivnosti in povečuje razširljivost čistih strežniških komponent. Zapletene sistemske omejitve omogočajo posrednikom posrednikov, prehodom in požarnim zidom, da se razporedijo na različnih točkah komunikacije, ne da bi spremenili vmesnike med komponentami, kar jim omogoča izvajanje sporočil REST-prevajanja ali povečanje produktivnosti s splošnim splošnim predpomnjenjem. Primer API-ja REST je dejstvo, da ko interakcije niso odvisne od statusa poizvedb, se za označevanje semantike in izmenjave informacij uporabljajo standardne metode in vrste medijev, odzivi pa jasno kažejo na možnost predpomnilnika.

    Formalne in arhitekturne omejitve

    Sistem RESTful označuje šest omejitev. Omejujejonačine, na katere lahko strežnik obdeluje in sprejema zahteve strank. S tem, ko deluje v teh mejah, storitev prejme zaželene nefunkcionalne lastnosti, kot so zmogljivost, prilagodljivost, enostavnost, spremenljivost, vidljivost, mobilnost in zanesljivost. Če storitev krši vse potrebne omejitve, se ne more šteti za RESTIVNO.
    Prve omejitve se nanašajo na arhitekturni slog "odjemalec-strežnik". Razdelitev težav z uporabniškim vmesnikom s težavami pri shranjevanju podatkov izboljša prenosljivost uporabniškega vmesnika na več platformah. Prav tako izboljšuje prilagodljivost s poenostavitvijo strežniških komponent. Morda je najpomembnejša za mrežo to, da delitev omogoča, da se komponente razvijajo neodvisno, s čimer se ohranjajo zahteve internetne lestvice do niza organizacijskih področij.

    Varnost

    REST ne zagotavlja vgrajene varnostne podpore. To je zelo pomembno pri oblikovanju spletnih storitev REST - varnostne zahteve in oblikovanje se opravljajo vnaprej. REST Spletne storitve uporabljajo operacije HTTP GET, POST, PUT in DELETE iz operacij CRUD. PUT in DELETE ne podpirajo številni brskalniki in so pogosto izključeni na ravni strežnika zaradi možnih kršitev zasebnosti. Če ni pravilno konfiguriran na ravni strežnika in odjemalca, bo lahko vsak uporabnik tretje osebe ustvaril vir z metodo PUT ali uničil uporabljeni vir DELETE. Pri razvoju varnostnih zahtev za spletne storitve je treba te točke upoštevati.

    Arhitekturni elementi

    Ključni vidik REST je značaj in stanjepodatkovnih elementov. V REST slogu obstajajo štirje koncepti, ki opisujejo obnašanje in stanje informacij. Vir je objekt (logičen ali fizičen), ki je na voljo na internetu. To je lahko dokument, shranjen v datotečnem sistemu strežnika ali vrstica v tabeli zbirke podatkov. Končni uporabnik komunicira z virom, da doseže določen cilj. Za oblikovanje sistema, ki uporablja REST, mora razvijalec razmišljati o poslovnih objektih kot o virih in kako jih je mogoče obravnavati.
    URI - Unikatno identificira vir. Ta parameter naredi naslov virov in ga je mogoče spremeniti. Sredstva se spremenijo s programskim protokolom - kot je HTTP. Predstavitev so podatki /metapodatki o stanju virov v tistem času. Odjemalec prejme predstavitev virov, ko zahteva URI. Tip virov je lahko kodiran v eni ali več prenesenih oblikah, kot so XML, HTML, JSON, RSS, REST API za java. O teh oblikah se je mogoče dogovoriti z mehanizmom pogajanj o vsebini. Link - omogoča aplikaciji, da izvede prehod iz enega stanja v drugega. Vsak vir mora biti povezan z drugimi viri. Predložitev mora predlagati povezavo do naslednje poteze. Dobro povezana aplikacija omogoča uporabniku, da samostojno odpre vmesnik.

    Priključek

    Priključek konektorja je abstraktni vmesnik, ki posreduje povezavo med komponentami. Ker se interakcije REST ne pojavijo, priključek ne sme shraniti informacij o stanju. Posledično lahko pride do vzporedne povezave med komponentami.
    Odjemalec in strežnik sta glavna priključka REST.Odjemalec sproži zahtevo in strežnik jo obdeluje. Predpomnilnik je druga vrsta priključka. Predpomnjenje je mogoče izvajati na ravni odjemalca, strežnika ali vmesnih ravni. To zmanjšuje čakalno dobo in uporabo omrežja.

    Komponente

    Komponente na viru izvajajo nabor jasno opredeljenih metod, ki ustvarjajo idejo za zajem trenutnega ali predvidenega stanja. User-Agent - za povezavo z zahtevo uporabi spojnik odjemalca. Izvorni strežnik uporablja odjemalec strežnika za odzivanje na zahtevo. Proxy je posrednik, ki se uporablja na strani odjemalca za zagotavljanje enkapsulacije vmesnika z drugimi storitvami. Opravlja tudi prevajanje in zaščito podatkov. Gateway je posrednik, ki se uporablja na strežniku za zagotavljanje enkapsulacije vmesnika z drugimi storitvami.

    Perspektive razvoja

    Vedno aktualno vprašanje: REST API - Kaj je to za moderne internetne tehnologije? REST je temelj današnje spletne arhitekture, ki se razvija z analizo slabosti obstoječih slogov in uvajanjem novih dodatkov. API-ji REST - kaj je to? To je želja po uporabi obstoječih slogov z usklajenim nizom omejitev, da bi zmanjšali omrežno povezljivost in povečali neodvisnost razvoja komponent, da bi dosegli razširljivost. Gre za novo arhitekturo porazdeljenega hipermedijskega sistema. S prihodom pametnih telefonov, tabličnih računalnikov in drugih pripomočkov se bo izvajalo omrežje in njegova razširljivost.

    Sorodne publikacije