70 vprašanj o intervjuju za spletne storitve & Odgovori

Anonim

Prenesite PDF

1) Določite spletno storitev?

Spletna storitev je vrsta programske opreme, ki je dostopna v internetu. Uporablja sistem za sporočanje XML in ponuja enostaven za razumevanje vmesnik za končne uporabnike.

2) Kaj je novega na tem področju zadnjih nekaj let?

Začetek XML na tem področju je napredek, ki spletnim storitvam zagotavlja en sam jezik za komunikacijo med RPC-ji, spletnimi storitvami in njihovimi imeniki.

3) Navedite primer prave spletne storitve?

Primer spletnih storitev je brskalnik IBM Web Services. Dobite ga na spletnem mestu IBM Alphaworks. Ta brskalnik prikazuje različne predstavitve, povezane s spletnimi storitvami. V bistvu je mogoče spletne storitve uporabljati s pomočjo SOAP, WSDL in UDDI. Vse to zagotavlja vmesnik plug-and-play za uporabo spletnih storitev, kot so storitve borznih kotacij, storitve poročanja o prometu, vremenske storitve itd.

4) Kako definirate sklad protokola spletnih storitev?

V osnovi je nabor različnih protokolov, ki jih je mogoče uporabiti za raziskovanje in izvajanje spletnih storitev. Celoten sklad ima štiri plasti, tj. Service Transport, XML Messaging, Service Description in Service Discovery.

5) Ali lahko definirate vsako od teh plasti protokola?

Plast storitvenega prenosa prenaša sporočila med različnimi aplikacijami, kot so HTTP, SMTP, FTP in Blocks Extensible Exchange Protocol (BEEP). Plast sporočil XML kodira sporočila v obliki XML, tako da jih je mogoče razumeti na obeh koncih, na primer XML-RPC in SOAP. Sloj Opis storitve opisuje uporabniški vmesnik za spletno storitev, kot je WSDL. Plast Service Discovery centralizira storitve v skupni register in ponuja preproste funkcije objavljanja, kot je UDDI.

6) Določite XML - RPC?

To je protokol, ki uporablja sporočila XML za oddaljene klice.

7) Določite MILO?

SOAP je protokol na osnovi XML za prenos med računalniki.

8) Določite WSDL?

Pomeni jezik za opis spletnih storitev. V bistvu gre za plast opisa storitve v zalogi protokola spletnih storitev. Sloj Opis storitve opisuje uporabniški vmesnik spletne storitve.

9) Kakšna varnost je potrebna za spletne storitve?

Raven varnosti spletnih storitev bi morala biti večja od ravni, ki jo imenujemo Secure Socket Layer (SSL). To stopnjo varnosti je mogoče doseči samo s platformo Entrust Secure Transaction Platform. Spletne storitve potrebujejo to raven varnosti, da zagotovijo zanesljive transakcije in zaupne podatke.

10) Ali imate kakšno idejo o varnostnih storitvah fundacije?

Kot že izhaja iz njegovega imena, so te storitve temelj ali osnove integracije, preverjanja pristnosti, avtorizacije, digitalnih podpisov in postopkov šifriranja.

11) Določite storitev za identifikacijo zaupanja?

Storitev za identifikacijo zaupanja prihaja iz platforme Entrust Security Transaction Platform. Ta platforma podjetjem omogoča nadzor nad identitetami, ki jim je zaupano izvajanje transakcij za transakcije spletnih storitev.

12) Kaj pomeni UDDI?

UDDI pomeni Universal, Description, Discovery in Integration. Je plast odkrivanja v svežnju protokolov spletnih storitev.

13) Določite storitev zaupanja v pravice?

Ta storitev preverja entitete, ki poskušajo dostopati do spletne storitve. Na primer, storitev preverjanja pristnosti, storitev pooblastil zagotavlja varnost pri poslovanju.

14) Določite storitev zaupanja v zasebnost?

Kot že ime pove, se ukvarja z varnostjo in zaupnostjo. Ta storitev šifrira podatke, da zagotovi dostop do podatkov le zainteresiranim stranem.

15) Kaj mislite s PKI?

Pomeni infrastrukturo z javnimi ključi.

16) Katera orodja se uporabljajo za preizkušanje spletne storitve?

Uporabil sem SoapUI za SOAP WS in vtičnik za plakate Firefox za storitve RESTFul.

17) Razlikovati med SOA in spletno storitvijo?

SOA je zasnova in arhitektura za izvajanje drugih storitev. SOA je mogoče enostavno implementirati z različnimi protokoli, kot so HTTP, HTTPS, JMS, SMTP, RMI, IIOP, RPC itd. Spletna storitev pa je sama po sebi implementirana tehnologija. Pravzaprav lahko uporabimo SOA s pomočjo spletne storitve.

18) Razpravljajte o različnih pristopih za razvoj spletne storitve, ki temelji na SOAP?

Spletno storitev, ki temelji na SOAP, lahko razvijemo z dvema različnima vrstama pristopov, kot sta pogodba prva in pogodba zadnja. Pri prvem pristopu je najprej definirana pogodba, nato pa iz pogodbe izhajajo razredi, pri kasnejši pa so najprej opredeljeni razredi, nato pa iz teh razredov izhaja pogodba.

19) Če morate izbrati en pristop, kakšna bo potem vaša izbira?

Po mojem mnenju je prvi pristop, ki je pristop s pogodbo, bolj izvedljiv v primerjavi z drugim, vendar je vseeno odvisen tudi od drugih dejavnikov.

20) Ali je za dostop do spletnih storitev potrebna kakšna posebna aplikacija?

Ne, za dostop do spletne storitve vam ni treba namestiti nobene posebne aplikacije. Do spletne storitve lahko dostopate iz katere koli aplikacije, ki podpira zahtevo in odziv na objekt XML.

21) Ali lahko naštejete nekaj brezplačnih in komercialnih izvedb spletnih storitev?

Izvedbe, ki jih poznam, so Apache SOAP, Referenčna implementacija JAX-WS, Referenčna implementacija JAX-RS, Metro, Apache CXF, MS.NET in Java 6.

22) Imenski brskalnik, ki omogoča dostop do spletne storitve?

Objekt JavaScript XmlHttpRequest je potreben za dostop do spletnih storitev prek brskalnikov. Brskalniki, ki podpirajo ta objekt, so brskalniki Internet Explorer, Safari in Mozilla, kot je FireFox.

23) Kaj je POČITEK?

REST pomeni reprezentativni državni prenos. REST sam po sebi ni standard, medtem ko uporablja različne standarde, kot so HTTP, URL, XML / HTML / GIF / JPEG.webp (predstavitve virov) in text / xml, text / html, image / gif, image / jpeg.webp itd. (Vrste MIME ).

24) Kako lahko uporabnikom ponudimo API?

Če želite uporabnikom zagotoviti API, lahko to enostavno storite z "odprto tabelo". Vse, kar morate storiti, je napisati odprto tabelo, ki je v bistvu shema XML, ki kaže na spletno storitev.

25) Navedite različne komunikacijske kanale v spletni storitvi?

Spletna storitev je integrirana s tremi protokoli, kot so HTTP / POST, HTTP / GET in SOAP. Strankam ponuja tri različne komunikacijske kanale. Naročnik lahko izbere kateri koli način komunikacije v skladu z zahtevami.

26) Kako lahko dokumentirate spletno storitev?

Spletne storitve se štejejo za samo-dokumentiranje, ker zagotavljajo celotne informacije o razpoložljivih metodah in parametrih, ki se uporabljajo za standard na osnovi XML, znan kot WSDL. Prav tako lahko z lastnimi atributi WebService in WebMethod zagotovite več informacij za razlago spletnih storitev.

27) Kakšne so situacije, ko potrebujemo spletne storitve ASP.NET?

Spletne storitve ASP.NET se uporabljajo, kadar je treba v spletno storitev uvesti tristopenjsko arhitekturo. Omogoča priročne načine uporabe komponent srednje stopnje prek interneta. Glavna prednost spletnih storitev .NET je, da so sposobne komunicirati prek požarnih zidov, ker SOAP uporabljajo kot transportni protokol.

28) Kaj so porazdeljene tehnologije?

Naraščajoče razmerje porazdeljenih aplikacij je povečalo povpraševanje po porazdeljenih tehnologijah. Omogoča segmentiranje aplikacijskih enot in njihov prenos v različne računalnike v različnih omrežjih.

29) Razlikovati med spletnimi storitvami, CORBA in DCOM?

Spletne storitve prenašajo / prejemajo sporočila v / iz aplikacije prek protokola HTTP. Za kodiranje podatkov uporablja XML.

CORBA in DCOM prenašata / prejemata sporočila v / iz aplikacije prek nestandardnih protokolov, kot sta IIOP in RPC.

30) Ali lahko poveste nekaj prednosti spletnih storitev?

Največja prednost spletnih storitev je, da jo podpirajo številne platforme. Poleg tega lahko spletne storitve v bližnji prihodnosti razširijo svoje meje in izboljšajo nove metode, ki bodo strankam olajšale delo. Izboljšava ne bo vplivala na stranke, tudi če ponujajo stare metode in parametre.

31) Ali lahko navedete nekatere standarde, ki se uporabljajo v spletnih storitvah?

Standardi, ki se uporabljajo v spletnih storitvah, so WSDL (uporablja se za ustvarjanje definicije vmesnika), SOAP (uporablja se za strukturiranje podatkov), HTTP (komunikacijski kanali), DISCO (uporablja se za ustvarjanje dokumentov o odkrivanju) in UDDI (uporablja se za ustvarjanje poslovnih registrov).

32) Na kratko razložite, kaj je DISCO?

DISCO pomeni odkritje. Združuje seznam medsebojno povezanih spletnih storitev. Organizacija, ki zagotavlja spletne storitve, izda DISCO datoteko na svojem strežniku in ta vsebuje povezave do vseh ponujenih spletnih storitev. Ta standard je dober, če stranka podjetje že pozna. Uporablja se lahko tudi znotraj lokalnega omrežja.

33) Na kratko razloži, kaj je UDDI?

UDDI (Univerzalni opis, odkrivanje in integracija) ponuja konsolidirani imenik za spletne storitve v internetu. Stranke uporabljajo UDDI za iskanje spletnih storitev v skladu s svojimi poslovnimi potrebami. V bistvu gosti spletne storitve različnih podjetij. Če želite deliti spletne storitve, jih morate objaviti v UDDI.

34) Pojasnite, katere vrste podatkov .NET podpirajo spletne storitve?

Spletne storitve .Net za prenos / prejemanje informacij uporabljajo standarde, ki temeljijo na XML. Spletne storitve .NET lahko tako delujejo samo s podatki, ki jih pozna standard XML sheme. Tako kot FileSteam tudi Eventlog itd. Niso prepoznani v standardih sheme XML, zato jih spletne storitve ne podpirajo.

35) Kako se preizkuša spletna storitev .NET?

ASP.NET rutinsko uporablja preskusno stran, ko v katerem koli brskalniku pokliče URL datoteke .asmx. Ta stran prikazuje popolne informacije o spletnih storitvah.

36) Kako se porablja spletna storitev .NET?

Ker vemo, da so spletne storitve zgrajene po standardih XML. Zato morajo stranke popolnoma razumeti sporočila, ki temeljijo na XML, za izmenjavo sporočil. Stranke lahko komunicirajo s spletnimi storitvami prek .NET framework, ki ponuja proxy mehanizme. Ti posredniški mehanizmi vsebujejo podrobne informacije o izmenjavi podatkov znotraj spletnih storitev, ki jih lahko stranke enostavno uporabljajo.

37) Ali lahko poimenujete dve Microsoftovi rešitvi za porazdeljene aplikacije?

Dve Microsoftovi rešitvi za porazdeljene aplikacije sta .NET Web Services in .NET Remoting.

38) Razlikovati med spletnimi storitvami .NET in .NET Remoting?

Kar zadeva protokol, .NET Web Service uporablja HTTP, medtem ko .NET Remoting uporablja kateri koli protokol, tj. TCP / HTTP / SMTP. Kar zadeva zmogljivost, je .NET Remoting sorazmerno hitrejši od spletne storitve .NET. Ker tudi .NET spletne storitve gostujejo prek IIS, je zato veliko bolj zanesljivo kot .NET Remoting.

39) Poimenujte komponente, ki jih želite objaviti med uvajanjem spletne storitve?

Sestavni deli, ki jih je treba objaviti med uvajanjem spletnih storitev, so Katalog spletnih aplikacij, Datoteka Webservice.asmx, Datoteka Webservice.Disco, Datoteka Web.Config in Bin Directory.

40) Katere korake opravi odjemalec za dostop do spletne storitve?

Najprej spletno referenco na spletno storitev ustvari stranka v svoji aplikaciji. Nato se generira razred proxy. Po tem se ustvari objekt razreda proxy in končno je dostop do spletne storitve prek tega objekta proxy.

41) Kako se spletne storitve izvajajo v .NET?

Za izvajanje spletnih storitev v .NET se uporabljajo upravljavci HTTP, ki prekinjajo zahteve za datoteke .asmx.

42) Pojasnite nekaj pomanjkljivosti predpomnjenja odzivov?

Predpomnjenje odzivov je neuporabno ali nesposobno, kadar metoda sprejme veliko količino vrednosti, ker predpomnjenje pomeni shranjevanje veliko informacij. Če je metoda odvisna od zunanjega vira informacij in ki ni na voljo znotraj parametrov, se takšne metode zaobidejo.

43) Kakšna je nadomestna rešitev za predpomnjenje odzivov?

Namesto Response Caching lahko uporabimo predpomnjenje podatkov (System.Web.Caching.Cach).

44) Kratkih nekaj pomanjkljivosti uporabe metod GET in POST za komunikacijo s spletno storitvijo?

Te metode so manj varne in uporabnikom onemogočajo posredovanje struktur in predmetov kot argumentov. Prav tako uporabnikom ne dovoljuje posredovanja argumentov ByRef.

45) Kako lahko uporabnik dostopa do predavanja kot spletne storitve?

Za dostop do razreda kot spletne storitve je treba razred podedovati iz razreda System.Web.Services.WebService in razred kvalificirati z atributom WebService.

46) Kako lahko do interneta dostopate do metode razreda spletnih storitev?

Za dostop do metode razreda spletnih storitev prek interneta je treba kvalificirati metodo z atributom WebMethod.

47) Kako je strukturirano sporočilo SOAP?

Sporočilo SOAP sestavljajo ovojnica SOAP, glave SOAP in telo SOAP.

48) Ali lahko navedete različne vrste spletnih storitev?

Skupaj obstajata dve vrsti spletnih storitev, tj. Spletna storitev na osnovi SOAP in spletna storitev RESTful.

To vprašanje je bilo omenjeno že prej.

49) Kaj se razlikuje pri spletnih storitvah RESTful?

Spletne storitve RESTful ne vsebujejo pogodbe ali datoteke WSDL.

50) Navedite mi nekaj razlogov za uporabo spletne storitve RESTful?

Spletne storitve RESTFul so enostavne za uporabo in preizkušanje. Podpira različne oblike zapisa podatkov, kot so XML, JSON itd.

51) Pojasnite, kaj so spletne storitve JAVA? Kakšne so metode za ustvarjanje spletnih storitev?

Spletne storitve Java so razvite za gradnjo in uvajanje osnovne spletne storitve na platformi JAVA.

Za ustvarjanje spletnih storitev sta sprejeta dva pristopa

  • Pristop od zgoraj navzdol
  • Pristop dopolnjevanja

52) Pojasnite, kaj je JAXP?

JAXP je API JAVA za obdelavo XML, ki aplikaciji omogoča pisanje, branje, obdelavo in pretvorbo podatkov XML. Podobno za izvajanje različnih funkcij obstajajo tudi drugi Java API-ji, kot so JAX-RPC, JAXM, JAXR, JAXB itd.

53) Omenite zavezujoči okvir JAXB?

Okvir za vezavo JAXB je na voljo v treh paketih Java

  • xml.bind: Ta paket definira abstraktne razrede in vmesnike, ki se uporabljajo neposredno z razredi vsebine
  • xml.bind.util: Ta paket vsebuje razrede pripomočkov, ki jih odjemalske aplikacije lahko uporabijo za upravljanje razvrščanja, odstranjevanja in preverjanja dogodkov
  • xml.bind.helper: Ta pomočnik nudi delne izvedbe nekaterih vmesnikov javax.xml.bind. Teh API-jev aplikacije, ki uporabljajo arhitekturo JAXB, ne smejo uporabljati neposredno

54) Navedite preprost primer, kako je lahko dokument XML maršal in unmaršal v okviru JAVA?

Marshalling je postopek pretvorbe XML dokumenta v Java berljivo obliko, UnMarshalling pa obratni postopek Marshalling. Poglejmo, kako Java odstrani dokument XML in ga nato razdeli nazaj

JAXBContext jc = JAXBContext.newInstance ("com.acme.foo");

// unmarshal iz foo.xml

Unmarshaller u = jc.createUnmarshaller ();

FooObject fooObj =

(FooObject) u.unmarshal (nova datoteka ("foo.xml"));

// maršal do sytem.out

Marshaller m = jc.createMarshaller ();

m.marshal (fooObj, System.out);

55) Pojasnite, kaj naredi Marshaller, če lastnost jaxb.encoding ni prijavljena?

Marshaller bo privzeto uporabil "UTF-8", če lastnost jaxb.encoding ni prijavljena.

56) Omenite, katere vrste validacije lahko izvaja odjemalec JAXB?

Obstajata dve vrsti validacije odjemalca JAXB, ki ju lahko izvede JAXB

  • Unmaršalno potrjevanje časa
  • Preverjanje na zahtevo

57) Omenite, kateri so trije načini za obvladovanje dogodkov, ki so se pojavili med maršalskimi, nemaršalnimi in validacijskimi operacijami?

  • Uporaba privzetega obdelovalca dogodkov
  • Registrirajte in izvedite orodje za obdelavo dogodkov po meri
  • Uporabite pripomoček ValidationEventCollector

58) Pojasnite, kje se nahaja prevajalnik JAXB?

Prevajalnik vezave sheme JAXB je nameščen v imenik / jaxb / bin. V tem imeniku sta dva skripta, xjc.sh (Solaris / Linux) in xjc.bat (Windows).

59) V katerih primerih morate prilagoditi privzeto vezavo?

V nekaterih primerih morate prilagoditi privzeto vezavo, kot je

  • Ustvarjanje dokumentacije API za pakete, razrede, metode in konstante, pridobljene iz sheme JAXB
  • Dajanje semantično smiselnih prilagojenih imen za primere, ki jih privzeto preslikava identifikatorjev imena XML v Javo ne more samodejno obdelati
  • Preglasitev privzete vezave, kot je določanje, da je treba skupino modelov priložiti razredu in ne seznamu

60) Pojasnite, kaj je vgrajena prilagoditev?

Prilagajanje vezav JAXB, narejeno s pomočjo vstavljenih deklaracij vezave v datoteki sheme XML, ki imajo obliko elementov , vdelanih v elemente sheme .

61) Pojasnite, kaj je podpis XML?

XML lahko uporabimo za podpis poljubnih podatkov, bodisi binarnih ali XML. Podatki se prepoznajo prek URI-jev v enem ali več referenčnih elementih. Opisana je v eni ali več oblikah, na primer ločena, ovojna ali ovojna.

62) Pojasnite, kaj je Stax?

Stax pomeni Streaming API za XML; to je API za branje in pisanje dokumentov XML, ki izvirajo iz programskega jezika JAVA.

63) Omenite, kateri so običajni API-ji XML?

Običajni API-ji XML vključujejo

  • API-ji na osnovi DOM ali na drevesu: Celoten dokument se prebere v pomnilnik kot drevesna struktura za naključno razpoložljivost s klicem aplikacije
  • API-ji na osnovi dogodkov: aplikacija se registrira, da pridobi dogodke, ko se entitete srečajo v izvornem dokumentu

64) Pojasnite, kaj je razčlenjevanje s potiskanjem in razčlenjevanje z vlečenjem?

  • Razčlenjevanje vlečenja : pretočno razčlenjevanje vlečenja se nanaša na programski model, v katerem odjemalska aplikacija pokliče metode v knjižnici za razčlenjevanje XML, kadar je potrebna za komunikacijo z informacijskim naborom XML, kar pomeni, da bo odjemalec dobil podatke XML le, ko bo zahtevan
  • Potisno razčlenitev: pri potisnem razčlenjevanju razčlenjevalnik potisne dogodke razčlenjevanja ali podatke XML v aplikacijo. V potisnem modelu je razčlenjevalnik zadržal postopek razčlenjevanja in razčlenjevalnik pokliče implementirane metode obdelave.

65) Pojasnite, na kateri tehnologiji temelji varnost XWS? Naštejte možnosti, ki jih zagotavlja zaščita XWS za zaščito aplikacij JAX-RPC?

Varnost XWS temelji na zaščiti spletnih storitev, ki temeljijo na JAX-RPC in na samostojni aplikaciji, ki temelji na SAAJ. Za zaščito aplikacije JAX-RPC obstajajo možnosti, ki jih zagotavlja varnost XWS

  • Digitalni podpis XML
  • Šifriranje XML
  • Preverjanje žetona uporabniškega imena
  • API-ji varnostnega okvira XWS

66) Naštejte šest paketov, ki so na voljo v API-ju za digitalni podpis XML?

API za digitalni podpis je

  • xml.crypto
  • xml.crypto.dsig
  • xml.crypto.dsig.keyinfo
  • xml.crypto.dsig.spec
  • xml.crypto.dom
  • xml.crypto.dsig.dom

67) Pojasnite, kaj je JAXR?

JAXR je programski API-jev JAVA za aplikacijo platforme Java za dostop in programsko interakcijo z različnimi vrstami registrov metapodatkov.

68) Pojasnite, iz česa je sestavljena arhitektura JAXR?

Arhitektura JAXR je sestavljena iz odjemalca JAXR in ponudnika JAXR.

  • Odjemalec JAXR: Je odjemalski program, ki uporablja API JAXR za uporabo registra prek ponudnika JAXR
  • Ponudnik JAXR: To je izvedba API-ja JAXR, ki omogoča dostop do določenega ponudnika registra ali do razreda ponudnikov registra, ki temelji na skupnih specifikacijah.

69) Pojasnite, kaj so modeli sporočanja JAXM?

Obstajata dve vrsti modelov sporočil za sinhrono in asinhrono JAXM

  • Model sinhronega sporočanja: V takem tipu modela odjemalec neposredno komunicira z virom. V tem bo stranka poslala zahtevo in počakala.
  • Model asinhronega sporočanja: v tem modelu odjemalec sporočilo usmeri ponudniku sporočil in se vrne nazaj. Ponudnik sporočil nato izvede usmerjanje sporočila do končnega vira.

70) Pojasnite, kaj so UDDI, DISCO in WSDL?

  • UDDI: Pomeni Universal Description, Discovery in I To je imenik, ki se uporablja za objavljanje in odkrivanje javnih spletnih storitev
  • DISCO: To je splošno znano kot odkritje. Skupno združuje skupne storitve in izpostavlja dokument s shemami spletnih storitev
  • WSDL: Okrajšava je za jezik opisa spletnih storitev (WSDL). Uporablja se za opis spletnih storitev. Opis vključuje URL spletnih storitev, lastnosti in metode, ki jih podpirajo spletne storitve, podatkovni tip, ki ga podpira, in podrobnosti protokola, ki jih podpira