Top 70 Întrebări despre interviu pentru servicii web & Răspunsuri

Anonim

Descărcați PDF

1) Definiți serviciul web?

Un serviciu web este un fel de software accesibil pe internet. Utilizează sistemul de mesagerie XML și oferă o interfață ușor de înțeles pentru utilizatorii finali.

2) Ce este nou în acest domeniu în ultimii ani?

Inițierea XML în acest domeniu este progresul care oferă serviciului web un singur limbaj pentru a comunica între RPC-uri, servicii web și directoare ale acestora.

3) Dă-mi un exemplu de serviciu web real?

Un exemplu de servicii web este browserul Web Services IBM. O puteți obține de pe site-ul IBM Alphaworks. Acest browser prezintă diverse demonstrații legate de serviciile web. Practic, serviciile web pot fi utilizate cu ajutorul SOAP, WSDL și UDDI. Toate acestea oferă o interfață plug-and-play pentru utilizarea serviciilor web, cum ar fi serviciul de cotare a acțiunilor, un serviciu de raportare a traficului, servicii meteorologice etc.

4) Cum definiți stiva de protocol de servicii web?

Este practic un set de diverse protocoale care pot fi utilizate pentru explorarea și executarea serviciilor web. Întreaga stivă are patru straturi, adică Transport servicii, Mesagerie XML, Descrierea serviciilor și Descoperirea serviciilor.

5) Puteți defini fiecare dintre aceste straturi de stivă de protocol?

Stratul Service Transport transferă mesaje între diferite aplicații, cum ar fi HTTP, SMTP, FTP și Protocolul de schimb extensibil Blocks (BEEP). Stratul de mesagerie XML codifică mesajele în format XML, astfel încât mesajele să poată fi înțelese la fiecare capăt, cum ar fi XML-RPC și SOAP. Stratul Descriere serviciu descrie interfața utilizatorului unui serviciu web, cum ar fi WSDL. Stratul Service Discovery centralizează serviciile către un registru comun și oferă funcționalități de publicare simple, cum ar fi UDDI.

6) Definiți XML - RPC?

Este un protocol care folosește mesaje XML pentru a efectua apeluri de procedură la distanță.

7) Definiți SOAP?

SOAP este un protocol bazat pe XML pentru transferul între computere.

8) Definiți WSDL?

Înseamnă limbajul de descriere a serviciilor web. Este practic stratul de descriere a serviciului din stocul protocolului de servicii web. Stratul Descriere serviciu descrie interfața cu utilizatorul pentru un serviciu web.

9) Ce fel de securitate este necesară pentru serviciile web?

Nivelul de securitate pentru serviciile web ar trebui să fie mai mult decât cel din ceea ce spunem Secure Socket Layer (SSL). Acest nivel de securitate poate fi atins doar de la Platforma de tranzacții sigure. Serviciile web au nevoie de acest nivel de securitate pentru a asigura tranzacții sigure și informații confidențiale sigure.

10) Aveți vreo idee despre serviciile de securitate ale fundației?

După cum sugerează din numele său, aceste servicii reprezintă fundamentul sau elementele de bază ale proceselor de integrare, autentificare, autorizare, semnături digitale și criptare.

11) Definiți serviciul de identificare a încredințării?

Serviciul de identificare de încredere vine de la platforma de tranzacții de securitate de încredere. Această platformă permite companiilor să controleze identitățile care sunt de încredere pentru a efectua tranzacții pentru tranzacții de servicii Web.

12) Ce înseamnă UDDI?

UDDI înseamnă Universal, Description, Discovery și Integration. Este stratul de descoperire din stiva de protocol a serviciilor web.

13) Definiți Serviciul de încredințare a drepturilor?

Acest serviciu verifică entitățile care încearcă să acceseze un serviciu web. De exemplu, serviciul de autentificare, Serviciul de drepturi asigură securitatea în operațiunile comerciale.

14) Definiți încredințarea serviciului de confidențialitate?

După cum sugerează și numele său, se ocupă de securitate și confidențialitate. Acest serviciu criptează datele pentru a se asigura că numai părțile interesate pot accesa datele.

15) Ce vrei să spui prin PKI?

Înseamnă infrastructură cu cheie publică.

16) Ce instrumente sunt utilizate pentru a testa un serviciu web?

Am folosit SoapUI pentru SOAP WS și pluginul pentru posterul Firefox pentru serviciile RESTFul.

17) Faceți diferența între un serviciu SOA și un serviciu web?

SOA este un design și arhitectură pentru implementarea altor servicii. SOA poate fi implementat cu ușurință utilizând diverse protocoale, cum ar fi HTTP, HTTPS, JMS, SMTP, RMI, IIOP, RPC etc. În timp ce serviciul Web, el însuși este o tehnologie implementată. De fapt, se poate implementa SOA folosind serviciul web.

18) Discutați despre diferite abordări pentru a dezvolta un serviciu web bazat pe SOAP?

Putem dezvolta servicii web bazate pe SOAP cu două tipuri diferite de abordări, cum ar fi contract-first și contract-last. În prima abordare, contractul este definit mai întâi și apoi clasele sunt derivate din contract, în timp ce în cea ulterioară, clasele sunt definite mai întâi și apoi contractul este derivat din aceste clase.

19) Dacă trebuie să alegeți o abordare, atunci care va fi alegerea dvs.?

Din punctul meu de vedere, prima abordare care este abordarea contractuală este mai fezabilă în comparație cu a doua, dar totuși depinde și de alți factori.

20) Este necesară vreo aplicație specială pentru a accesa serviciul web?

Nu, nu trebuie să instalați nicio aplicație specială pentru a accesa serviciul web. Puteți accesa serviciul web din orice aplicație care acceptă cererea și răspunsul obiectelor bazate pe XML.

21) Puteți numi câteva implementări gratuite și comerciale pentru servicii web?

Implementările pe care le știu sunt Apache SOAP, JAX-WS Reference Implementation, JAX-RS Reference Implementation, Metro, Apache CXF, MS.NET și Java 6.

22) Browser de nume care permite accesul la serviciul web?

Obiectul JavaScript XmlHttpRequest este necesar pentru a accesa serviciul web prin intermediul browserelor. Browserele care acceptă acest obiect sunt browserele bazate pe Internet Explorer, Safari și Mozilla, cum ar fi FireFox.

23) Ce este REST?

REST înseamnă Transfer de stat reprezentativ. REST în sine nu este un standard, în timp ce folosește diverse standarde, cum ar fi HTTP, URL, XML / HTML / GIF / JPEG.webp (reprezentări de resurse) și text / xml, text / html, image / gif, image / jpeg.webp etc. (tipuri MIME ).

24) Cum se poate furniza API utilizatorilor?

Pentru a furniza un API utilizatorilor, se poate face cu ușurință acest lucru cu o „masă deschisă”. Tot ce trebuie să faceți este să scrieți un tabel deschis, care este practic o schemă XML care indică un serviciu web.

25) Numiți diferitele canale de comunicare din serviciul web?

Serviciul web este integrat cu trei protocoale precum HTTP / POST, HTTP / GET și SOAP. Oferă clienților trei canale de comunicare diferite. Clientul poate alege orice metodă de comunicare conform cerințelor.

26) Cum puteți documenta serviciul web?

Serviciile web sunt considerate ca auto-documentare, deoarece oferă informații complete cu privire la metodele și parametrii disponibili utilizați pentru standardul bazat pe XML, cunoscut sub numele de WSDL. De asemenea, se pot furniza mai multe informații pentru a explica serviciile web prin intermediul propriilor atribute WebService și WebMethod.

27) Care sunt situațiile când avem nevoie de servicii web ASP.NET?

Serviciile web ASP.NET sunt utilizate atunci când este nevoie să implementați arhitectura pe trei niveluri într-un serviciu web. Permite modalități la îndemână de a utiliza componente de nivel mediu prin internet. Principalul avantaj al serviciilor Web .NET este că sunt suficient de capabili să comunice între firewall-uri, deoarece folosesc SOAP ca protocol de transport.

28) Ce sunt tehnologiile distribuite?

Raportul în creștere al aplicațiilor distribuite a crescut cererea de tehnologii distribuite. Permite segmentarea unităților de aplicație și transferul acestora pe diferite computere din diferite rețele.

29) Faceți diferența între serviciile web, CORBA și DCOM?

Serviciile web transferă / primesc mesaje către / din aplicație, respectiv, prin protocol HTTP. Folosește XML pentru a codifica date.

CORBA și DCOM transferă / primesc mesaje către / de la aplicație, respectiv, prin protocoale nestandardizate precum IIOP și RPC.

30) Puteți spune câteva beneficii ale serviciilor web?

Cel mai mare avantaj al serviciului web este că este susținut de o mare varietate de platforme. Mai mult, în viitorul apropiat, serviciile web își pot extinde limitele și pot îmbunătăți noi metode care vor oferi ușurință clienților. Îmbunătățirea nu va afecta clienții, chiar dacă aceștia oferă metode și parametri vechi.

31) Puteți denumi unele standarde utilizate în serviciile web?

Standardele utilizate în serviciile web sunt WSDL (utilizat pentru a crea definiția interfeței), SOAP (utilizat pentru structurarea datelor), HTTP (canale de comunicații), DISCO (utilizat pentru a crea documente de descoperire) și UDDI (utilizat pentru a crea registre comerciale).

32) Explicați pe scurt, ce este DISCO?

DISCO înseamnă descoperire. Acesta grupează lista serviciilor web interdependente. Organizația care furnizează servicii web, emite un fișier DISCO pe serverul său și acel fișier conține linkurile tuturor serviciilor web furnizate. Acest standard este bun atunci când clientul cunoaște deja compania. De asemenea, poate fi utilizat și într-o rețea locală.

33) Explicați pe scurt, ce este UDDI?

UDDI (Descriere universală, descoperire și integrare) oferă un director consolidat pentru servicii web pe internet. Clienții folosesc UDDI pentru a găsi servicii web conform nevoilor lor de afaceri. Practic, găzduiește serviciile web de la diverse companii. Pentru a partaja servicii web, trebuie să le publicați în UDDI.

34) Explicați tipurile de date acceptate de serviciile web .NET?

Serviciile web .Net utilizează standarde bazate pe XML pentru a transfera / primi informații. Astfel, serviciile web .NET pot funcționa numai cu tipuri de date cunoscute de standardul schemei XML. La fel ca FileSteam, Eventlog etc. nu sunt recunoscute de standardele schemei XML și, prin urmare, nu sunt acceptate în serviciile web.

35) Cum este testat un serviciu web .NET?

ASP.NET folosește o pagină de test în mod obișnuit, atunci când se solicită adresa URL a fișierului .asmx în orice browser. Această pagină prezintă informații complete privind serviciile web.

36) Cum se consumă un serviciu web .NET?

Din moment ce știm că serviciile web sunt construite pe standarde XML. Prin urmare, clienții trebuie să aibă o înțelegere completă a mesajelor bazate pe XML pentru a schimba mesaje. Clienții pot comunica cu serviciile web prin .NET framework care oferă mecanisme proxy. Aceste mecanisme proxy au informații detaliate cu privire la partajarea datelor în cadrul serviciilor web care pot fi ușor utilizate de clienți.

37) Puteți denumi cele două soluții Microsoft pentru aplicațiile distribuite?

Cele două soluții Microsoft pentru aplicații distribuite sunt .NET Web Services și .NET Remoting.

38) Faceți diferența între .NET Web Services și .NET Remoting?

În ceea ce privește protocolul, .NET Web Service folosește HTTP, în timp ce .NET Remoting folosește orice protocol, adică TCP / HTTP / SMTP. Când vine vorba de performanță, .NET Remoting este comparativ, mai rapid decât .NET Web Service. De asemenea, deoarece Serviciile Web .NET sunt găzduite prin IIS, prin urmare, este mult mai fiabil decât .NET Remoting.

39) Numiți componentele care urmează să fie publicate în timpul implementării unui serviciu web?

Componentele care trebuie publicate în timpul implementării unui serviciu web sunt Web Application Directory, Webservice.asmx File, Webservice.Disco File, Web.Config File și Bin Directory.

40) Care sunt etapele efectuate de client pentru a accesa un serviciu web?

În primul rând, o referință web la serviciul web este creată de client în aplicația sa. Apoi se generează o clasă proxy. După aceea, se creează un obiect din clasa proxy și, în cele din urmă, serviciul web este accesat prin acel obiect proxy.

41) Cum sunt implementate serviciile web în .NET?

Pentru a implementa servicii web în .NET, sunt utilizate handler-uri HTTP care întrerup solicitările către fișierele .asmx.

42) Explicați câteva dezavantaje ale cache-ului de răspuns?

Răspunsul cache este inutil sau incompetent atunci când metoda acceptă o cantitate mare de valori, deoarece cache înseamnă să stocheze multe informații. De asemenea, dacă metoda depinde de sursa externă de informații și care nu sunt furnizate în cadrul parametrilor, astfel de metode sunt ocolite.

43) Care este soluția alternativă la cache-ul de răspuns?

Se poate folosi Data Caching (System.Web.Caching.Cach) în loc de Response Caching.

44) Pe scurt câteva dezavantaje ale utilizării metodelor GET și POST pentru a comunica cu serviciul web?

Aceste metode sunt mai puțin sigure și împiedică utilizatorii să transmită structuri și obiecte ca argumente. De asemenea, nu permite utilizatorilor să transmită argumente ByRef.

45) Cum se poate accesa o clasă ca serviciu web?

Pentru a accesa o clasă ca serviciu web, ar trebui să moșteniți clasa din clasa System.Web.Services.WebService și să calificați clasa cu atributul WebService.

46) Cum se poate accesa metoda clasei de servicii web prin internet?

Pentru a accesa metoda clasei de servicii web prin internet, ar trebui să calificați o metodă cu atributul WebMethod.

47) Cum este structurat un mesaj SOAP?

Un mesaj SOAP este format din plic SOAP, anteturi SOAP și corp SOAP.

48) Puteți numi diferite tipuri de servicii web?

Există în total două tipuri de servicii web, adică servicii web bazate pe SOAP și servicii web RESTful.

Această întrebare este deja menționată mai devreme.

49) Ce este diferit în serviciile web RESTful?

Serviciile web RESTful nu conțin niciun contract sau fișier WSDL.

50) Dă-mi câteva motive pentru a utiliza serviciul web RESTful?

Serviciile web RESTFul sunt simple de implementat și testat. Suportă diverse formate de date, cum ar fi XML, JSON etc.

51) Explicați ce este serviciile web JAVA? Care sunt metodele de creare a serviciilor web?

Serviciile web Java sunt dezvoltate pentru a construi și implementa servicii web de bază pe platforma JAVA.

Pentru a crea servicii web, sunt adoptate două abordări

  • Abordare de sus în jos
  • Abordare suplimentară

52) Explicați ce este JAXP?

JAXP este un API JAVA pentru procesarea XML care permite aplicației să scrie, să citească, să manipuleze și să transforme date XML. În mod similar, pentru a îndeplini alte funcții diferite există și alte API-uri Java, precum JAX-RPC, JAXM, JAXR, JAXB etc.

53) Menționați cadrul obligatoriu JAXB?

Cadrul de legare JAXB este disponibil în trei pachete Java

  • xml.bind: Acest pachet definește clasele abstracte și interfețele care sunt utilizate direct cu clasele de conținut
  • xml.bind.util: Acest pachet conține clase de utilitate , care poate fi folosit de către aplicațiile client pentru a gestiona triajul, unmarshalling și validare evenimente
  • xml.bind.helper: Acest pachet de asistență oferă implementări parțiale pentru unele dintre interfețele javax.xml.bind. Aceste API-uri nu trebuie utilizate direct de aplicațiile care utilizează arhitectura JAXB

54) Dați un exemplu simplu despre cum documentul XML poate fi Marshal și Unmarshal în cadrul JAVA?

Marshalling este procesul de conversie a documentului XML în formă lizibilă în Java, în timp ce UnMarshalling este procesul invers al Marshalling. Să vedem cum Java anulează un document XML și apoi îl ordonează înapoi

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

// unmarshal din foo.xml

Unmarshaller u = jc.createUnmarshaller ();

FooObject fooObj =

(FooObject) u.unmarshal (fișier nou ("foo.xml"));

// marshal to sytem.out

Marshaller m = jc.createMarshaller ();

m.marshal (fooObj, System.out);

55) Explicați ce face Marshaller dacă proprietatea codificării jaxb.nu este declarată?

În mod implicit, Marshaller va utiliza „UTF-8” dacă nu este declarată proprietatea jaxb.encoding.

56) Menționează care sunt tipurile de validare pe care le poate efectua un client JAXB?

Există două tipuri de validare client JAXB pe care le poate efectua un JAXB

  • Validarea timpului nemarshalian
  • Validare la cerere

57) Menționați care sunt cele trei modalități de a gestiona evenimentul întâlnit în timpul operațiunilor de mareșal, de nesimțire și de validare?

  • Folosind gestionarul de evenimente implicit
  • Înregistrați și implementați un gestionar de evenimente personalizat
  • Utilizați utilitarul ValidationEventCollector

58) Explicați unde se află compilatorul JAXB?

Compilatorul de legare a schemelor JAXB este plasat în directorul / jaxb / bin. În acest director, există două scripturi, xjc.sh (Solaris / Linux) și xjc.bat (Windows).

59) În ce cazuri trebuie să personalizați legătura implicită?

În unele cazuri, vi se cere să personalizați legătura implicită, cum ar fi

  • Crearea documentației API pentru pachetele, clasele, metodele și constantele JAXB derivate din schemă
  • Oferirea de nume personalizate semantic semnificative pentru cazurile pe care maparea implicită a identificatorului de nume XML-Java nu le poate gestiona automat
  • Suprascrierea legării implicite, ca specificarea faptului că un grup de modele ar trebui să fie atașat la o clasă mai degrabă decât la o listă

60) Explicați ce este personalizarea în linie?

Personalizarea legărilor JAXB realizate prin intermediul declarațiilor de legare în linie într-un fișier schemă XML care iau forma unor elemente încorporate în elemente schemă .

61) Explicați ce este semnătura XML?

XML poate fi utilizat pentru a semna orice date arbitrare, fie că este vorba de un cod binar sau XML. Datele sunt recunoscute prin URI-uri într-unul sau mai multe elemente de referință. Este descris într-una sau mai multe forme, cum ar fi detașat, învelit sau învelit.

62) Explicați ce este Stax?

Stax înseamnă Streaming API pentru XML; este un API pentru citirea și scrierea documentelor XML, provenind din limbajul de programare JAVA.

63) Menționează care sunt API-urile XML obișnuite?

API-urile XML obișnuite includ

  • API-uri bazate pe DOM sau pe arbore: întregul document este citit în memorie ca o structură de arbore pentru disponibilitate aleatorie prin apelarea aplicației
  • API-uri bazate pe evenimente: aplicația se înregistrează pentru a obține evenimente pe măsură ce se întâlnesc entități în documentul sursă

64) Explicați ce este analiza Push și analiza Pull?

  • Pull Parsing: Analizarea pull pull-ului se referă la un model de programare în care o aplicație client apelează metode într-o bibliotecă de analiză XML, atunci când trebuia să comunice cu un set de informații XML - ceea ce înseamnă că clientul va obține date XML numai atunci când este solicitat
  • Push Parsing: în Push Parsing, analizorul împinge evenimente sau date XML de analiză către aplicație. În modelul push, parserul a preluat procesul de analiză și parserul apelează metodele de gestionare implementate.

65) Explicați pe ce tehnologie se bazează securitatea XWS? Enumerați opțiunile oferite de securitatea XWS pentru securizarea aplicațiilor JAX-RPC?

Securitatea XWS se bazează pe securizarea serviciilor web construite pe JAX-RPC și pe aplicații independente bazate pe SAAJ. Pentru securizarea aplicației JAX-RPC, sunt opțiunile oferite de securitatea XWS

  • Semnătură digitală XML
  • Criptare XML
  • Verificare jeton nume de utilizator
  • API-urile cadrului de securitate XWS

66) Enumerați cele șase pachete disponibile în XML semnătura digitală API?

Semnătura digitală API este

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

67) Explicați ce este JAXR?

JAXR este API-urile de programare JAVA pentru aplicația platformei Java pentru a accesa și interacționa programatic cu diferite tipuri de registre de meta-date.

68) Explicați în ce constă arhitectura JAXR?

Arhitectura JAXR este formată dintr-un client JAXR și un furnizor JAXR.

  • Client JAXR: este un program client care utilizează API-ul JAXR pentru a utiliza un registru printr-un furnizor JAXR
  • Furnizor JAXR: este o implementare a API-ului JAXR care oferă acces la un anumit furnizor de registru sau la o clasă de furnizori de registre care sunt construiți pe baza unor specificații comune.

69) Explicați ce sunt modelele de mesagerie JAXM?

Există două tipuri de modele de mesagerie pentru JAXM sincron și asincron

  • Model de mesagerie sincronă: În acest tip de model, clientul comunică direct cu sursa. În acest sens, clientul va trimite cererea și așteaptă.
  • Model de mesagerie asincronă: În acest model, clientul direcționează mesajul către furnizorul de mesagerie și revine înapoi. Furnizorul de mesaje execută apoi rutare a mesajului către sursa finală.

70) Explicați ce este UDDI, DISCO și WSDL?

  • UDDI: înseamnă descriere universală, descoperire și I Este directorul care este utilizat pentru publicarea și descoperirea serviciilor web publice
  • DISCO: Este cunoscut sub numele de descoperire. Clubează serviciile comune împreună și expune schemele documentelor serviciilor web
  • WSDL: înseamnă limbajul de descriere a serviciului web (WSDL). Este folosit pentru a descrie serviciile web. Descrierea include adresa URL a serviciilor web, proprietățile și metodele acceptate de serviciile web, tipul de date pe care îl acceptă și detaliile protocolului pe care le acceptă