top 20 restful web services interview question
Seznam najpogostejših vprašanj in odgovorov za spletne intervjuje, ki vam bodo v pomoč pri pripravi na prihodnji intervju:
Spletne storitve, zelo znan izraz, ko govorimo o izmenjavi neke vrste podatkov med več aplikacijami ali recimo programsko opremo. Na podlagi modela odjemalec-strežnik lahko te storitve uporablja več programskih aplikacij, napisanih v različnih jezikih, poleg tega pa ima to prednost, da deluje na različnih platformah.
Podobno kot REST tudi reprezentativni državni prenos temelji na arhitekturi sloga odjemalca in strežnika brez državljanstva, do katere je mogoče zlahka dostopati po omrežju in jo identificirati z URI-ji, tj. Enotnim identifikatorjem vira.
Glavni cilj opisa zgornjih definicij spletnih storitev in REST je, da vam pomaga pri povezovanju s tem izrazom ' RESTful spletne storitve “ ker so spletne storitve RESTful opredeljene kot spletne storitve, ki uporabljajo metodo HTTP in temeljijo na arhitekturi REST. Ima uporabne funkcije, kot so visoka razširljivost in vzdržnost, ustvarjanje API-jev itd.
Več o tem = >> Flask Restful API
V tem članku boste našli zbirko vprašanj in odgovorov, ki bodo razjasnili vaše osnove in pripomogli k boljšemu razumevanju teme.
Preberite tudi:
- Najpogostejša vprašanja o intervjuju za spletne storitve
- Najpomembnejša vprašanja o intervjuju za SoapUI
Seznam vprašanj o spletnih storitvah RESTful
Začnimo.
V # 1) Kako razumete, kaj so spletne storitve RESTful?
Odgovor: Tako kot SOAP (Simple Object Access Protocol), ki se uporablja za razvoj spletnih storitev po metodi XML, tudi spletne storitve RESTful uporabljajo spletni protokol, tj. Protokol HTTP. Imajo funkcijo, kot so razširljivost, vzdrževanje, pomagajo pri komunikaciji več aplikacij, ki temelji na različnih programskih jezikih itd.
Implementacija spletne storitve RESTful opredeljuje način dostopa do različnih virov, ki jih zahteva odjemalec in je zahtevo poslal prek strežnika prek spletnega brskalnika.
Pomembni vidiki te izvedbe vključujejo:
- Viri
- Glave zahtev
- Telo zahteve
- Odzivno telo
- Kode stanja
V # 2) Poimenujte protokol, ki ga uporabljajo spletne storitve RESTful.
Odgovor: Spletne storitve RESTful uporabljajo znani spletni protokol, to je protokol HTTP. Ta služi kot medij za podatkovno komunikacijo med odjemalcem in strežnikom. Standardne metode HTTP se uporabljajo za dostop do virov v arhitekturi spletnih storitev RESTful.
V # 3) Pojasnite izraz 'naslavljanje' v zvezi s spletno storitvijo RESTful.
Odgovor: Tako kot potrebujemo naslov s poštno številko, da dosežemo katero koli osebo, na enak način tudi »Addressing« poišče vire, ki so na voljo na strežniku za namen gostovanja spletnih storitev. Običajno se to naredi z URI, tj. Enotnim identifikatorjem vira.
V # 4) Navedite funkcije spletnih storitev RESTful.
Odgovor: Vsaka spletna storitev RESTful mora imeti naslednje funkcije in značilnosti, ki so navedene spodaj:
- Na podlagi predstavitve odjemalca in strežnika.
- Uporaba protokola HTTP za izvajanje funkcij, kot so pridobivanje podatkov iz spletne storitve, pridobivanje virov, izvajanje katere koli poizvedbe itd.
- Komunikacija med strežnikom in odjemalcem poteka prek medija, imenovanega „sporočanje“.
- Naslavljanje virov, ki so na voljo na strežniku prek URI-jev.
- Temelji na konceptu apatridnosti, kjer je vsaka zahteva stranke in njen odgovor neodvisen od druge s popolnim zagotovilom, da zagotavlja zahtevane informacije.
- Uporablja koncept predpomnjenja.
- Deluje na enotnem vmesniku.
V # 5) Pojasnite tehniko sporočanja.
Odgovor: Sporočila so način izmenjave podatkov za katero koli vrsto komunikacije. Na enak način ima protokol HTTP vlogo komunikacije sporočil med odjemalcem in strežnikom prek načinov HTTP Request in Response. Zahtevo HTTP pošlje odjemalec, ki vsebuje informacije o podatkih, nato pa od strežnika prejme odgovor HTTP.
Sporočila so zbiranje informacij o podatkih, tj. Metapodatki.
V # 6) Katere so ključne komponente zahteve HTTP in odziva HTTP?
Odgovor: Osrednje komponente v okviru zahteve HTTP so:
- Glagol: Vključuje metode, kot so GET, PUT, POST itd.
- Enotni identifikator vira za prepoznavanje virov, ki so na voljo na strežniku.
- Različica HTTP za določanje različice HTTP.
- Glava zahteve HTTP za vsebovanje informacij o podatkih.
- Telo zahteve HTTP, ki vsebuje predstavitev uporabljenih virov.
Osrednje komponente v odzivu HTTP so:
- Zahtevaj šifro: Vsebuje različne kode, ki določajo stanje odziva strežnika.
- Različica HTTP za določanje različice HTTP.
- Glava odziva HTTP, ki vsebuje informacije o podatkih.
- Telo odziva HTTP, ki vsebuje predstavitev uporabljenih virov.
V # 7) Pojasnite izraz 'apatridnost' v zvezi s spletno storitvijo RESTful.
Odgovor: V REST sam ST opredeljuje prenos države, brez državljanstva pa pomeni popolno izolacijo. To pomeni, da se stanje odjemalske aplikacije nikoli ne shrani na strežniku in se prenese naprej.
V tem postopku odjemalci pošljejo vse informacije, ki jih strežnik potrebuje za izpolnitev poslane zahteve HTTP. Tako vsaka stranka zahteva in odgovor je neodvisen od drugega s popolnim zagotovilom, da zagotovi zahtevane informacije.
Vsaka stranka posreduje 'identifikator seje', ki deluje tudi kot identifikator za vsako sejo.
V # 8) Naštejte prednosti in slabosti „apatridnosti“.
Odgovor: V zgornjem vprašanju smo razumeli pomen apatridnosti v zvezi s komunikacijo odjemalec-strežnik. Zdaj pa si oglejmo nekaj njegovih prednosti in slabosti.
Prednosti:
- Vsaka metoda, potrebna za komunikacijo, je opredeljena kot neodvisna metoda, tj. Od drugih metod ni odvisnosti.
- Prejšnja komunikacija s stranko in strežnikom se ne vzdržuje, zato je celoten postopek zelo poenostavljen.
- Če se katere koli informacije ali metapodatki, ki so bili prej uporabljeni v drugi metodi, nato odjemalec ponovno pošlje te informacije z zahtevo HTTP.
- Protokol HTTP in spletna storitev REST imata funkcijo apatridnosti.
Slabosti:
- V vsaki zahtevi odjemalca HTTP zahteva spletna storitev razpoložljivost nekaterih informacij o stanju odjemalca.
V # 9) Navedite nekaj pomembnih omejitev za spletne storitve RESTful.
Odgovor: Vsaka omejitev ima tako pozitivne kot tudi negativne vplive, zato je treba za doseganje splošne arhitekture med njima obstajati ravnovesje.
Spodaj je omenjenih nekaj pomembnih omejitev za spletno storitev RESTful:
- Za vsak strežnik in odjemalca bi morali biti ločeni pomisleki, ki bodo pomagali ohranjati modularnost znotraj aplikacije. To bo tudi zmanjšalo zapletenost in povečalo razširljivost.
- Komunikacija odjemalec-strežnik mora biti brez državljanstva, kar pomeni, da se ne uporabljajo nobene prejšnje informacije in da se celotna izvedba izvede ločeno. V primeru okvare stranki pomaga tudi pri okrevanju.
- V komunikaciji odjemalec-strežnik mora biti odziv HTTP mogoče predpomniti, tako da se lahko po potrebi uporabi predpomnjena kopija, kar pa poveča razširljivost in zmogljivost strežnika.
- Četrta omejitev je enoten vmesnik, ki omogoča enostavno razumevanje interakcije med odjemalcem in strežnikom. Ta omejitev je nadalje razdeljena na štiri podomeje kot:
- Identifikacija virov
- Manipulacija z viri
- Vsako sporočilo je enostavno razumljivo in je samoopisno.
- Hypermedia, ki je definirano kot besedilo s hiperpovezavami in se ob kliku premakne v drugo stanje aplikacije.
- Komunikacija odjemalec-strežnik mora potekati na večplastnem sistemu, zato mora imeti stranka le znanje o vmesni ravni, s katero poteka komunikacija,
V # 10) Kaj je 'vir'?
Odgovor: Tako kot primerek 'Object', smo se tudi mi naučili v programskem jeziku Object Orient, na enak način je tudi 'Resource' opredeljen kot predmet vrste, ki je lahko slika, datoteka HTML, besedilni podatki in katera koli vrsta dinamičnega podatkov. Na voljo so različne oblike predstavitev, ki predstavljajo vir.
Nekateri najpogostejši viri so navedeni spodaj:
- JSON
- YAML
- XML
- HTML
V # 11) Zakaj je potrebno pravilno zastopanje vira?
Odgovor: Zastopanost je zelo pomembna, ker določa enostavno prepoznavanje virov. S pravilnimi predstavitvami vira v ustrezni obliki omogoča stranki enostavno razumevanje oblike.
V # 12) Naštejte nekaj pomembnih točk, ki jih je treba upoštevati pri oblikovanju predstavitve virov za spletne storitve RESTful.
Odgovor: Ker ni omejitev glede oblike, v kateri se izvaja predstavitev virov, ampak samo, da je glavna zahteva oblika predstavitve, mora biti v skladu z zahtevo stranke.
Dobra predstavitev virov je zasnovana z upoštevanjem naslednjih glavnih točk:
- Naročnik in strežnik morata obliko predstavitve virov zlahka razumeti.
- Predstavitev mora biti popolna, ne glede na strukturo oblike, ki je lahko zapletena ali enostavna.
- V primeru povezave virov z drugimi viri je treba takšne primere tudi obravnavati in obravnavati.
V # 13) Kaj je predpomnjenje?
Odgovor: Predpomnjenje je postopek, v katerem se shrani odziv strežnika, tako da se lahko po potrebi uporabi predpomnjena kopija in ni potrebe po ponovnem ustvarjanju istega odziva. Ta postopek ne samo zmanjša obremenitev strežnika, ampak posledično poveča razširljivost in zmogljivost strežnika. Samo odjemalec lahko predpomni odziv in tudi to za omejeno časovno obdobje.
Spodaj so navedeni viri in njihov kratek opis, da jih je mogoče identificirati za postopek predpomnjenja:
- Čas in datum ustvarjanja virov
- Čas in datum spremembe vira, ki običajno shranjuje zadnje podrobnosti.
- Glava za nadzor predpomnilnika
- Ura in datum, ko bo predpomnjeni vir potekel.
- Starost, ki določa čas, od katerega je bil vir pridobljen.
V # 14) Pojasnite glavo nadzornika predpomnilnika.
Odgovor: Standardna glava Cache-control lahko pomaga pri doseganju sposobnosti predpomnilnika. Spodaj je naveden kratek opis različne glave za nadzor predpomnilnika:
- Javno: Vire, ki so označeni kot javni, lahko predpomnijo katere koli vmesne komponente med odjemalcem in strežnikom.
- Zasebno: Vire, ki so označeni kot zasebni, lahko predpomni le odjemalec.
- Noben predpomnilnik ne pomeni, da določenega vira ni mogoče predpomniti, zato se celoten postopek ustavi.
V # 15) Katere so najboljše prakse, ki jih je treba upoštevati pri oblikovanju spletnih storitev RESTful?
Odgovor: Za oblikovanje varne spletne storitve RESTful je treba upoštevati nekaj najboljših praks ali primernih točk.
Ti so razloženi na naslednji način:
- Vsak vnos na strežniku mora biti potrjen.
- Vnos mora biti dobro oblikovan.
- Nikoli ne posredujte občutljivih podatkov prek URL-ja.
- Za vsako sejo mora biti uporabnik overjen.
- Za opozarjanje na napako je treba uporabiti samo sporočila o napakah HTTP.
- Uporabite obliko sporočila, ki je razumljiva in jo zahteva stranka.
- Enotni identifikator virov mora biti opisen in lahko razumljiv.
V # 16) Kaj je tovor?
Odgovor: Podatki o zahtevah, ki so v telesu vsakega sporočila HTTP, se imenujejo „koristni tovor“. V spletni storitvi Restful se lahko tovor pošlje prejemniku samo z metodo POST.
Pošiljanje podatkov kot koristnega tovora po metodi POST ni omejeno, skrb pa je le, da bo več podatkov porabilo več časa in pasovne širine. To lahko porabi tudi veliko uporabnikovega časa.
V # 17) Navedite nekatere metode HTTP z opisom.
Odgovor: Spodaj je naveden seznam metod HTTP z njihovimi opisi:
- GET: To je operacija samo za branje, ki pridobi seznam uporabnikov na strežniku.
- PUT: Ta operacija se uporablja za ustvarjanje katerega koli novega vira na strežniku.
- POST: Ta operacija se uporablja za posodabljanje starega vira ali ustvarjanje novega.
- IZBRIŠI: Kot že ime pove, se s to operacijo briše kateri koli vir na strežniku.
- OPCIJE: Ta operacija pridobi seznam vseh podprtih možnosti virov, ki so na voljo na strežniku.
V # 18) Kakšna je razlika med metodo PUT in metodo POST?
b ++ izvedba binarnega drevesa
Odgovor: Glavna razlika med metodo PUT in POST je, da je rezultat, ustvarjen z metodo PUT, vedno enak, ne glede na to, kolikokrat je bila operacija izvedena. Po drugi strani pa je rezultat, ki ga ustvari operacija POST, vsakič drugačen.
V # 19) Kakšno je vaše razumevanje JAX-RS?
Odgovor: JAX-RS je opredeljen kot Java API za spletno storitev RESTful. Med več knjižnicami in ogrodjem je to najprimernejši API, ki temelji na programskem jeziku Java in podpira spletno storitev RESTful.
Nekatere izvedbe JAX-RS so:
- Jersey
- POČITEK Preprosto
- Apache CFX
- Igraj
Med njimi je Jersey najbolj priljubljen okvir.
V # 20) Kaj so kode stanja HTTP? Uvrstite nekaj s pomenom.
Odgovor: Kode stanja HTTP so v bistvu prikaz stanja opravila, ki je bilo izvedeno na strežniku, z načinom nekaterih kod. Vsaka koda ima svoj pomen.
Nekatere kode stanja HTTP s svojim pomenom so naslednje:
- Koda 200: To kaže na uspeh.
- Koda 201: To pomeni, da je bil vir uspešno ustvarjen.
- Koda 204: To pomeni, da v odzivnem telesu ni vsebine.
- Koda 404: To pomeni, da ni na voljo nobene metode.
Takih kod, ki označujejo stanje, je malo več.
Zaključek
Ta članek vam bo pomagal pri pripravi na intervju za spletne storitve RESTful in vam bo pomagal razumeti koncept na preprost in enostaven način. Poskušal sem zajeti vsa področja, ki so zelo potrebna za popolno znanje o spletnih storitvah RESTful.
Nadaljnje branje - Vadnica za API Flask
Samo zapomnite si, morda ne boste mogli odgovoriti na vsa vprašanja v intervjuju, toda karkoli boste odgovorili, mora biti natančno. Vaš osnovni koncept mora biti močan in vaša raven samozavesti visoka.
Vse najboljše!!
Priporočeno branje
- Nekaj zapletenih ročnih preizkusov Vprašanja in odgovori
- Top 20+ .NET vprašanj in odgovorov za intervjuje
- 20 Najbolj priljubljenih vprašanj in odgovorov na intervju za TestNG
- 20 najpomembnejših vprašanj in odgovorov za preskušanje API-jev
- Vprašanja in odgovori za preizkušanje ETL
- Top 20 najnovejših vprašanj in odgovorov za intervju za DevOps za leto 2021
- 20 vprašanj in odgovorov na intervju za najboljše poslovne analitike (SEZNAM 2021)
- 20 najboljših vprašanj in odgovorov o intervjuju za spletne storitve RESTful
- 45 vprašanj in odgovorov za intervju za spletne storitve (RESTful, SOAP, varnostna vprašanja)