Efnisyfirlit[Fela][Sýna]
- 1. Hvað skilur þú við REST?
- 2. Hvað meinarðu með REST API?
- 3. Hvað nákvæmlega er URI?
- 4. Hver eru einkenni RESTful Web Services?
- 5. Hver eru leiðarljós REST?
- 6. Nefnið HTTP aðferðirnar sem REST styður.
- 7. Lýstu takmörkunum sem samræmt viðmót setur.
- 8. Hvað nákvæmlega er REST auðlind?
- 9. Hvað þýðir JAX-RS fyrir þig?
- 10. Hvað aðgreinir AJAX og REST frá hvort öðru?
- 11. Geturðu talið upp nokkra RESTful vefþjónustu galla?
- 12. Hvað aðgreinir PUT og POST tækni frá hvor annarri?
- 13. Hvernig prófar þú RESTful vefþjónustur?
- 14. Lýstu REST API í hinum raunverulega heimi.
- 15. Hvernig virkar Microservice Architecture?
- 16. Hvað nákvæmlega er skyndiminni?
- 17. Lýstu farmfari.
- 18. Aðgreina sápu og hvíld?
- 19. Er hægt að nota TLS (Transport Layer Security Protocol) með REST?
- 20. Idempotent aðferðir: hverjar eru þær? Hvernig á það við um heim RESTful vefþjónustu?
- 21. Hver er virkni HTTP Basic Authentication?
- 22. Telurðu að GraphQL sé besti kosturinn til að búa til örþjónustuarkitektúr?
- 23. Hver er helsti greinarmunurinn á öruggu og óvirku HTTP aðferðunum?
- 24. Hvað gefur JAX-RS API til kynna með RESTful Root Resource Classes?
- 25. Hvað er Postman nákvæmlega og hvers vegna er það notað?
- 26. Hvernig er REST API haldið öruggum?
- Niðurstaða
Þróun REST hefur gert API ótrúlega aðgengileg á sama tíma og hún sýnir fullan styrk þeirra og möguleika. REST API er auðvelt að búa til og vista í skyndiminni vegna auðlindamiðaðs arkitektúrs þeirra.
Að auki, í gegnum tíðina, voru RESTful API forverar annarrar mikilvægrar þróunar eins og tölvuskýja og hönnunar sem byggir á örþjónustu.
Þess vegna ætti það ekki að koma á óvart að REST API forritarar eru eftirsóttir í dag miðað við hvernig þeir veita fyrirtækjum sem nota RESTful þjónustu samkeppnisforskot. REST API eru vinsæl hönnunarstefna.
Mörg upplýsingatæknifyrirtæki vilja REST API þekkingu frá hugbúnaðaraðilar og spyrja um það í tækniviðtölum.
Hér eru nokkrar af dæmigerðustu REST API viðtalsspurningunum sem hjálpa þér að vera tilbúinn fyrir viðtöl hjá ýmsum fyrirtækjum ef þú vilt vinna á REST API þróunarsviðinu.
1. Hvað skilur þú við REST?
REST er byggingarfræðileg hugmyndafræði til að hanna forrit á netinu sem eru byggð á Hypertext Transfer Protocol (HTTP).
REST skilgreinir ákveðna staðla sem vefþjónusta verður að uppfylla til að teljast RESTful. Þessar ráðleggingar tryggja að beiðnir og auðlindir séu sendar hratt og á skilvirkan hátt milli viðskiptavinar og netþjóns með því að nota staðlaðar HTTP samskiptareglur.
2. Hvað meinarðu með REST API?
Hlekkur hugbúnaðar til hugbúnaðar sem kallast forritunarviðmót gerir kleift að samskipta og deila gögnum milli annars sjálfstæðra forrita. Til dæmis gæti fréttavefsíða notað Twitter API til að uppgötva viðeigandi kvak sjálfkrafa og samþætta þau í fréttir.
API sem fylgir REST meginreglum er þekkt sem REST API, stundum þekkt sem RESTful API. Í REST API er hvert gagnastykki meðhöndlað sem auðlind og gefið sérstakt staðlað auðkenni (URI).
Til dæmis gerir Twitter API hvert tíst að endurheimtanlegu úrræði sem er í boði fyrir viðskiptavini. Twitter API geta notendur notað til að senda tíst og framkvæma önnur verkefni á vefsíðunni.
3. Hvað nákvæmlega er URI?
A tölvunet Hægt er að vísa til auðlindar með því að nota URI eða samræmda auðlindaauðkenni. Það þjónar sem leið til að aðgreina eina auðlind frá annarri. Heimildirnar gætu verið á netinu eða ekki.
Vegna staðlaðrar uppbyggingar þeirra gera URI það auðvelt að tengjast jafnvel ýmsum tegundum auðlinda. Staðsetning eða nafn auðlindarinnar er innifalið í URI ásamt stafastreng.
URI er samsett úr slóð, kerfi, fyrirspurn og öðrum þáttum en inniheldur ekki samskiptaregluna.
Með því að nota samskiptareglur eru vefslóðir (Uniform Resource Locators) notaðar til að finna auðlindir á internetinu eða aðgengilegar í gegnum það.
4. Hver eru einkenni RESTful Web Services?
- Viðskiptavinur-þjónninn er grunnurinn að þjónustunni.
- Þjónustan getur fengið aðgang að auðlindum með því að nota URI.
- Þjónustan notar HTTP-bókunina til að afla gagna/auðlinda, keyra fyrirspurnir og sinna öðrum verkefnum.
- Skilaboð er heiti aðferðarinnar sem notuð er til að hafa samskipti á milli viðskiptavinarins og netþjónsins.
- Þessar þjónustur geta einnig innleitt REST byggingarmynstrið með því að nota SOAP þjónustu.
- Til að draga úr símtölum netþjóna fyrir sams konar endurteknar beiðnir, notar þessar þjónustur einnig hugmyndina um skyndiminni.
5. Hver eru leiðarljós REST?
Fimm skilyrði verða að uppfylla af REST API:
Aftenging biðlara og netþjóns: Aðeins er hægt að nota röð beiðna og svara til að hafa samskipti milli viðskiptavinar og netþjóns. Aðeins viðskiptavinir og netþjónar geta sent beiðnir og svör, í sömu röð. Þessi einföldu hugmynd gerir báðum aðilum kleift að starfa óháð hvor öðrum.
Samræmt viðmót: Það verður að vera samræmd siðareglur fyrir allar tengingar biðlara og netþjóns. Þessi samskiptaregla fyrir REST er HTTP. Vegna þess að hvert forrit biður um og sendir gögn á sama tungumáli gerir samræmt viðmót samþættingu einfaldari.
Ríkisfangslaus: Miðlarinn vistar engar skrár yfir fyrri beiðnir eða svör í ríkisfangslausum samskiptum. Hver beiðni og svar veita allar upplýsingar sem þarf til að klára skiptin. Ríkisfangslaus samskipti auka hraðann, spara minni og draga úr streitu á netþjóninum. Að auki kemur í veg fyrir möguleika á að beiðni mistakist vegna ófullnægjandi gagna.
Lagskipt kerfi: Netþjónar sem eru á milli biðlarans og API netþjónsins eru nefndir lag. Þessir aukaþjónar sinna margs konar þjónustu, svo sem að greina ruslpóst og hámarka hraða. Lög í REST eru mát, sem þýðir að hægt er að bæta þeim við og eyða þeim án þess að hafa áhrif á samskipti milli viðskiptavinarins og API netþjónsins.
Skyndiminni: Viðskiptavinir geta vistað hvaða tilföng sem er til að auka hraða ef svör miðlara gefa til kynna hvort tilfangið sé skyndiminni eða ekki.
Kóðun á eftirspurn: Til að bregðast við því getur API sent keyranlegan tölvukóða til viðskiptavina. Biðlaraforritið getur síðan keyrt kóðann á eigin bakenda.
6. Nefnið HTTP aðferðirnar sem REST styður.
HTTP aðferðirnar sem REST styður eru:
- FÁ: Þessi aðferð biður um tilföng á tilgreindri vefslóð. Beiðnihluti ætti ekki að vera með vegna þess að hún verður hunsuð. Það gæti verið hægt að vista það á staðnum eða á þjóninum.
- POST: Þessi aðferð sendir gögn til þjónustu til vinnslu og þjónustan ætti venjulega að skila nýju eða breyttu tilfangi.
- PUT: Tilfangið er uppfært á vefslóð beiðninnar.
- EYÐA: Tilfanginu er eytt á vefslóð beiðninnar.
- Valkostir: Það auðkennir studdar aðferðir.
- HEAD: Lýsigögnum vefslóðar beiðninnar er skilað.
7. Lýstu takmörkunum sem samræmt viðmót setur.
Til þess að aðskilja biðlarann frá þjóninum þarf stöðugt viðmót.
Til að ná samræmdu viðmóti eru eftirfarandi fjórar skorður nauðsynlegar:
- Tilfangaauðkenning: Beiðnir viðskiptavina verða að nota staðlað auðkenni tilfanga til að auðkenna tilföng (URI)
- Meðhöndlun auðlinda með því að nota þessar framsetningar: Viðskiptavinir hafa allar þær upplýsingar sem þarf til að geta breytt auðlindastöðu þegar þeir fá auðlindaframsetningu frá þjóninum.
- Sjálflýsandi skilaboð: Skilaboð innihalda öll lýsigögn og aðrar upplýsingar sem þarf til að viðtakandinn skilji þau.
- Hypermedia sem forritaástandsvél: Rásin fyrir samskipti viðskiptavinar og netþjóns er hámiðlun, eins og HTML, og viðskiptavinir þurfa ekki API-sérstök skjöl til að skilja svör netþjónsins.
8. Hvað nákvæmlega er REST auðlind?
Auðlindir eru grundvallarþættir RESTful vefþjónustu í REST arkitektúr. Þau innihalda allar mikilvægar upplýsingar sem API viðskiptavinur þarf að fá aðgang að.
Hægt er að nálgast hvers kyns auðlindir, svo sem HTML síðu, mynd, myndband eða eitthvað annað sem þarf fyrir API-virkni, í gegnum netþjóninn í biðlara-miðlarakerfi.
Auðlindirnar eru auðkenndar með Uniform Resource Identifier. Texti, JSON eða XML eru öll ásættanleg framsetning á auðlindum. Eftir að hafa sagt það eru engar takmarkanir á sniði fyrirsvarsins.
9. Hvað þýðir JAX-RS fyrir þig?
Það er einfaldara að búa til RESTful vefþjónustur í Java þökk sé Java API fyrir RESTful vefþjónustu, oft þekkt sem JAX-RS. Hönnuðir geta lýst auðlindum og aðgerðum sem hægt er að framkvæma á þeim með því að nota athugasemdirnar sem eru veittar.
10. Hvað aðgreinir AJAX og REST frá hvort öðru?
Ajax:
- Ajax er hópur tækni sem gerir kleift að uppfæra kraftmikla notendaviðmót þætti án þess að þurfa að endurhlaða síðuna.
- Ajax fjarlægir ósamstillt samskipti milli biðlara og netþjóns.
RESTUR:
- REST krefst samskipta milli þjónsins og biðlarans.
- Nýting auðlinda er mikilvæg fyrir vefslóð uppbyggingu og beiðni/svar mynstur sem REST notar.
11. Geturðu talið upp nokkra RESTful vefþjónustu galla?
Ekki er hægt að halda uppi fundum þar sem þjónustan fylgir hugmyndinni um ríkisfangsleysi. (Viðskiptavinurinn er ábyrgur fyrir því að senda lotuauðkennið í gegnum uppgerð lotunnar.)
Öryggistakmarkanir eru ekki grundvallaratriði í REST. Samskiptareglurnar sem nota það erfa öryggisráðstafanirnar. Þess vegna er mikilvægt að gæta varúðar við að setja öryggisráðstafanir, svo sem að samþætta SSL/TLS-undirstaða auðkenningar.
12. Hvað aðgreinir PUT og POST tækni frá hvor annarri?
PUT:
- Það er ekkert skyndiminni fyrir PUT svör.
- Idempotent (þ.e. margar beiðnir munu skila sömu niðurstöðu)
- farmur beiðninnar uppfærir eða kemur í stað markforða.
POST:
- idempotent ekki (þ.e. margar beiðnir munu skila margfeldi af sömu auðlindinni)
- Vefþjónninn vinnur úr hleðslu beiðninnar út frá fyrirhugaðri auðlind.
- Ef viðeigandi skyndiminnisstýringarhaus er innifalinn er hægt að vista POST svör.
13. Hvernig prófar þú RESTful vefþjónustur?
RESTful vefþjónustuprófun er hægt að aðstoða með fjölda tækja, þar á meðal Swagger og Postman. Skoðun á færibreytum beiðna eins og fyrirspurnarfæribreytur, hausa og svarhausa er möguleg vegna gnægðs eiginleika þess síðarnefnda.
Hægt er að nota Postman til að senda beiðnir til endastöðva og sýna niðurstöðurnar. Og XML og JSON er hægt að búa til úr þessum svörum.
Postman og Swagger bjóða báðir upp á afar sambærilega virkni. Á hinn bóginn býður Swagger einnig upp á getu eins og endapunktaskjöl.
14. Lýstu REST API í hinum raunverulega heimi.
- Ferða- og miðasöluvefsíður geta nýtt sér flugtíma og verðlagningu sem flugfélög gera aðgengileg í gegnum API.
- Til þess að korta- og leiðsöguforrit (eins og Google Maps) geti notað þau, gera almenningssamgöngustofur gögn sín oft aðgengileg almenningi í rauntíma í gegnum API.
- Veðurforrit nota opin API sem skiptast á veðurgögnum til að birta veðurupplýsingar.
- Hönnuðir geta fengið aðgang að kortagögnum Google korta í gegnum fjölda hýst API þess. Þessi API eru notuð af forriturum til að fella inn kraftmikil kort í öppin sín og vefsíður.
15. Hvernig virkar Microservice Architecture?
- Beiðnir eru sendar af ýmsum viðskiptavinum með ýmsum tækjum.
- Eftir að hafa staðfest auðkenni viðskiptavina, veita auðkennisveitendur öryggistákn.
- Beiðnum viðskiptavinarins er stjórnað af API Gateway.
- Allt efni kerfisins er varðveitt sem kyrrstætt efni.
- Stjórnunartólið athugar jafnvægi þjónustu á hnútum og allar bilanir.
- Uppgötvun samskiptaleiða milli örþjónustu er aðstoðuð af þjónustuuppgötvun.
- Gagnaver og proxy-þjónar mynda dreifð netkerfi sem kallast efnisafhendingarnet.
- Fjarþjónusta veitir aðgang að upplýsingum úr fjarlægð.
16. Hvað nákvæmlega er skyndiminni?
Sú venja að geyma tímabundið afrit af svari netþjóns einhvers staðar (eins og tölvuminni) til að fá aðgang að því síðar hraðar er þekkt sem skyndiminni.
Skyndiminni eykur hraða netþjónsins þegar REST API er notað með því að minnka þá vinnu sem þjónninn þarf að gera til að fullnægja beiðninni. Forrit sem nota API keyra hraðar þökk sé skyndiminni vegna þess að þau þurfa ekki að senda inn nýja beiðni í hvert skipti sem þau þurfa tilföng.
Cache-Control reit HTTP svarhaussins inniheldur upplýsingar um hversu lengi tilföng getur verið í skyndiminni af biðlaranum áður en það þarf að opna hana aftur.
17. Lýstu farmfari.
Burðargetan í REST vísar til upplýsinganna sem eru í meginmáli HTTP svarsins. Viðskiptavinurinn notaði GET tæknina til að biðja um umrædd gögn.
Skjalið sem inniheldur tísttextann og allar nauðsynlegar skrár til að setja tístið á vefsíðu verður innifalið í hleðslunni, til dæmis ef þú biður Twitter API um tiltekið tíst. Að auki er hægt að taka farminn með í HTTP beiðninni með POST aðferðinni.
18. Aðgreina SÁPA Vs REST?
- Ólíkt SOAP, sem ræður aðeins við XML, gerir REST fjölbreyttari auðlindasnið kleift, þar á meðal XML, texta, HTML, myndir, myndbönd og fleira.
- Þegar öryggi er mikilvægt fyrir netforrit er SOAP gagnlegt. REST er ekki hægt að nota þegar viðskipti verða að vera lokið á öruggan hátt þar sem það er ekki sérstaklega öruggt.
- Þar sem SOAP er aðeins siðareglur getur REST notað það í vefþjónustu sinni en ekki öfugt.
- Þó REST sé aðeins byggingarmynstur sem notað er til að þróa vefþjónustu og fylgi ákveðnum takmörkunum eins og uppsetningu biðlara-miðlara, ástandsleysi, skyndiminnisvörun, lagskipt kerfi og stöðugt viðmót, þá er SOAP samskiptaregla sem starfar á tilteknum stöðlum sem þarf að fylgja nákvæmlega. til.
- Þó REST noti alhliða auðkenni (URI), notar SOAP þjónustuviðmót til að veita getu sína til viðskiptavinaforrita. REST hefur minni bandbreiddarþörf en SOAP þar sem SOAP skilaboð eru upplýsingaþungari.
19. Er hægt að nota TLS (Transport Layer Security Protocol) með REST?
Í raun getum við það. Samskipti REST biðlarans og netþjónsins eru dulkóðuð með TLS og samskiptareglur gefa viðskiptavinum einnig leið til að sannvotta netþjóna.
Vegna þess að það kemur í staðinn fyrir Secure Socket Layer er það notað fyrir örugg samskipti (SSL). Innleiðing RESTful vefþjónustu er árangursrík með HTTPS vegna þess að hún vinnur á áhrifaríkan hátt með bæði TLS og SSL.
REST erfir eiginleika samskiptareglunnar sem hún útfærir, sem er eitt sem þarf að hafa í huga hér. Þar af leiðandi er öryggisvörn háð samskiptareglunum sem REST notar.
20. Idempotent aðferðir: hverjar eru þær? Hvernig á það við um heim RESTful vefþjónustu?
Þegar URI er það sama hafa sumar HTTP aðferðir í beiðni sömu áhrif á þjóninn hvort sem þær eru afhentar einu sinni eða nokkrum sinnum. Idempotent tækni er það sem þetta er þekkt sem.
Til dæmis, sama hversu oft URI sem notar GET aðferðina er keyrt, mun þjónninn alltaf upplifa sömu niðurstöðu. Idempotent aðferðir eru GET, PUT og PATCH, svo eitthvað sé nefnt.
Idempotent HTTP aðferðir eru nokkrar af þeim sem RESTful notar vefforrit. Þau eru nauðsynleg til að tryggja samræmi í starfsemi RESTful vefþjónustunnar.
Viðskiptavinir sem nota REST API geta gert kóðavillur sem neyða REST API til að gera óvart endurteknar beiðnir. Þessi símtöl hafa tilhneigingu til að misnota auðlindir.
21. Hver er virkni HTTP Basic Authentication?
Þegar grunnauðkenning er notuð sem hluti af API verður notandinn að leggja fram notandanafnið og lykilorðið, sem eru tengd af vafranum á formi „notendanafn: lykilorð“ og base64 kóðuð.
Í hverri HTTP beiðni frá vafranum er kóðað gildi afhent sem gildi fyrir „Authorization“ hausinn. Vegna þess að skilríkin eru bara kóðuð, er mælt með því að nota þetta eyðublað þegar þú sendir HTTPS beiðnir vegna þess að þær eru ekki öruggar og hver sem er getur stöðvað ef öryggisreglur eru ekki notaðar.
22. Telurðu að GraphQL sé besti kosturinn til að búa til örþjónustuarkitektúr?
Örþjónustur og GraphQL fara fullkomlega saman vegna þess að GraphQL heldur örþjónustuarkitektúr þínum leyndu fyrir viðskiptavinum þínum.
Frá framendanum vilt þú að öll gögnin þín komi frá einu API, en frá bakendanum viltu skipta þeim í örþjónustur. Besta tæknin sem ég veit um til að ná hvoru tveggja er með því að nota GraphQL.
Það gerir þér kleift að skipta bakhlutanum þínum í örþjónustur á meðan þú gefur hverju forriti eitt forritaskil og gerir kleift að sameina gögn frá ýmsum þjónustum.
23. Hver er helsti greinarmunurinn á öruggu og óvirku HTTP aðferðunum?
Idempotent aðferðir gefa sömu niðurstöðu þegar þær eru kallaðar fram einu sinni eða nokkrum sinnum með sömu beiðni. PUT aðferðin er veikburða.
Allar öruggar leiðir eru vanmáttugar, en ekki allar vanmáttugar aðferðir eru öruggar þar sem öruggar aðferðir breyta ekki auðlindunum. Til dæmis er GET öruggt þar sem það sækir bara gögn og breytir ekki auðlindinni.
Að auki er það vanmáttugt, sem þýðir að það mun alltaf skila sama svari þegar það er kallað fram.
24. Hvað gefur JAX-RS API til kynna með RESTful Root Resource Classes?
Java Enterprise Edition býður upp á flokka og viðmót sem uppfylla JAX-RS API kröfur. Með hjálp JAX-RS er auðveldara að búa til Java vefþjónustu í REST byggingarstíl.
Í JAX-RS API eru rótarauðlindaflokkar bara „venjulegir gamlir java hlutir,“ eða POJO. Til þess að útfæra nauðsynlegar vefauðlindir nota þeir JAX-RS athugasemdir.
Þeir hafa annað hvort @path-skýringar eða að minnsta kosti ein af aðferðum þeirra hefur @path-skýringar. Hægt er að draga þá saman sem Java flokka með aðferðum til að takast á við API endapunkta.
25. Hvað er Postman nákvæmlega og hvers vegna er það notað?
API þróunarverkfæri sem kallast Postman er notað til að búa til, prófa og breyta API. Þetta tól geta verið notaðir af forriturum fyrir hvaða eiginleika sem þeir þurfa fyrir API. Það einfaldar og auðveldar verk þróunaraðila.
Postman gerir það auðvelt að gera ýmsar HTTP fyrirspurnir, þar á meðal GET, POST, PUT og PATCH, vista umhverfi til síðari nota og umbreyta API í kóða á fjölda mismunandi tungumála.
Hvert stig í API lotunni er gert einfaldara með Postman og samvinnu er straumlínulagað fyrir hraðari þróun API.
Að auki gerir það forriturum kleift að stjórna skjölum, forskriftum, prófunartilvikum, ferlum og API bæklingum.
26. Hvernig er REST API haldið öruggum?
Þar sem REST API nota ekki eins strangar öryggisráðstafanir og SOAP API, ætti ekki að senda eða sækja viðkvæm gögn með því að nota þau.
Hins vegar halda áreiðanleg REST API áfram að samþætta öryggisstýringar fyrir öruggar og áreiðanlegar gagnasendingar.
- Auðkenning og heimild: Hver einasta beiðni sem gerð er til API verður að standast þessar tvær athuganir. Að sannreyna auðkenni viðskiptavinarins með auðkenningu og staðfesta að þeir hafi heimild til að fá aðgang að umbeðnum auðlindum með heimild eru tvö mismunandi ferli.
- Staðfesting: Áður en API veitir aðgang að auðlindum sínum, verður samt að athuga beiðnir fyrir hugsanlega skaðlegum kóða eftir auðkenningu og heimild. Miðlari væri þannig opinn fyrir inndælingarárás.
- Staðfesting: Áður en API veitir aðgang að auðlindum sínum, verður samt að athuga beiðnir fyrir hugsanlega skaðlegum kóða eftir auðkenningu og heimild. Miðlari væri þannig opinn fyrir inndælingarárás.
- Dulkóðun: TLS/SSL dulkóðun verndar tenginguna milli biðlara og netþjóns og kemur í veg fyrir að tölvuþrjótar stöðvi beiðnir og svör.
- Hraðatakmarkandi tækni, eins og takmörk og inngjöf, vernda netþjóna fyrir árásum með grófum krafti eins og DDoS sem miðar að því að rýra eða hrynja þá.
- Engar viðkvæmar upplýsingar í URI: URI auðlindir ættu ekki að innihalda nein vernduð gögn (svo sem notandanafn, lykilorð eða auðkenningarlykill).
Niðurstaða
Til hamingju! Nokkrar grundvallar til flóknar REST API viðtalsspurningar og lausnir þeirra eru nú innan seilingar.
Nú þegar þú hefur góða hugmynd um hvernig á að bregðast við sumum dæmigerðum REST API viðtalsspurningum geturðu haldið áfram að svara viðtölunum. Næsta skref fer eftir markmiðum þínum.
heimsókn Viðtalsröð með Hashdork til að undirbúa viðtöl.
Skildu eftir skilaboð