70 najpopularniejszych pytań do wywiadów dotyczących usług internetowych & Odpowiedzi

Anonim

ściągnij PDF

1) Zdefiniuj usługę sieciową?

Usługa internetowa to rodzaj oprogramowania, które jest dostępne w Internecie. Korzysta z systemu przesyłania wiadomości XML i oferuje łatwy do zrozumienia interfejs dla użytkowników końcowych.

2) Co nowego w tej dziedzinie od kilku lat?

Zainicjowanie XML w tej dziedzinie jest postępem, który zapewnia usługom sieciowym jeden język do komunikacji między RPC, usługami sieciowymi i ich katalogami.

3) Podaj mi przykład prawdziwej usługi internetowej?

Jednym z przykładów usług WWW jest przeglądarka IBM Web Services. Możesz go pobrać z serwisu IBM Alphaworks. Ta przeglądarka wyświetla różne prezentacje związane z usługami internetowymi. Zasadniczo usługi sieciowe mogą być używane przy pomocy SOAP, WSDL i UDDI. Wszystko to zapewnia interfejs typu plug-and-play do korzystania z usług internetowych, takich jak usługa notowań giełdowych, usługa raportów o ruchu drogowym, usługa pogodowa itp.

4) Jak definiujesz stos protokołów usług sieciowych?

Zasadniczo jest to zestaw różnych protokołów, których można używać do eksploracji i wykonywania usług internetowych. Cały stos ma cztery warstwy, tj. Transport usług, przesyłanie komunikatów XML, opis usługi i wykrywanie usług.

5) Czy możesz zdefiniować każdą z tych warstw stosu protokołów?

Warstwa transportu usług przesyła komunikaty między różnymi aplikacjami, takimi jak HTTP, SMTP, FTP i Blocks Extensible Exchange Protocol (BEEP). Warstwa XML Messaging koduje wiadomości w formacie XML, tak aby komunikaty były zrozumiałe na każdym końcu, na przykład XML-RPC i SOAP. Warstwa opisu usługi opisuje interfejs użytkownika do usługi WWW, takiej jak WSDL. Warstwa wykrywania usług centralizuje usługi we wspólnym rejestrze i oferuje proste funkcje publikowania, takie jak UDDI.

6) Zdefiniować XML - RPC?

Jest to protokół, który wykorzystuje komunikaty XML do wykonywania zdalnych wywołań procedur.

7) Zdefiniuj SOAP?

SOAP to oparty na XML protokół do przesyłania między komputerami.

8) Zdefiniować WSDL?

Oznacza język opisu usług sieci Web. Zasadniczo jest to warstwa opisu usługi w magazynie protokołów usługi sieciowej. Warstwa Opis usługi opisuje interfejs użytkownika do usługi internetowej.

9) Jakie zabezpieczenia są potrzebne w przypadku usług internetowych?

Poziom bezpieczeństwa usług internetowych powinien być wyższy niż ten, który mówimy, Secure Socket Layer (SSL). Ten poziom bezpieczeństwa można osiągnąć tylko dzięki Entrust Secure Transaction Platform. Usługi internetowe wymagają tego poziomu bezpieczeństwa, aby zapewnić niezawodne transakcje i bezpieczne informacje poufne.

10) Czy masz pojęcie o usługach ochrony fundamentów?

Jak sugeruje nazwa, usługi te stanowią podstawę lub podstawy integracji, uwierzytelniania, autoryzacji, podpisów cyfrowych i procesów szyfrowania.

11) Zdefiniować usługę powierzania identyfikacji?

Usługa Entrust Identification Service pochodzi z platformy Entrust Security Transaction Platform. Platforma ta umożliwia firmom kontrolowanie tożsamości, którym można zaufać przy wykonywaniu transakcji w ramach usług internetowych.

12) Co oznacza UDDI?

UDDI oznacza uniwersalność, opis, wykrywanie i integrację. Jest to warstwa wykrywania w stosie protokołów usług sieciowych.

13) Zdefiniuj usługę Entrust Entitlements?

Ta usługa weryfikuje jednostki, które próbują uzyskać dostęp do usługi internetowej. Na przykład usługa uwierzytelniania, usługa uprawnień, zapewnia bezpieczeństwo operacji biznesowych.

14) Zdefiniuj usługę Entrust Privacy?

Jak sama nazwa wskazuje, zajmuje się bezpieczeństwem i poufnością. Ta usługa szyfruje dane, aby zapewnić, że tylko zainteresowane strony będą miały dostęp do danych.

15) Co rozumiesz przez PKI?

Oznacza to infrastrukturę klucza publicznego.

16) Jakie narzędzia są używane do testowania usługi internetowej?

Użyłem SoapUI dla SOAP WS i wtyczki do plakatów Firefoksa dla usług RESTFul.

17) Jak odróżnić SOA od usługi internetowej?

SOA to projekt i architektura do wdrażania innych usług. SOA można łatwo zaimplementować przy użyciu różnych protokołów, takich jak HTTP, HTTPS, JMS, SMTP, RMI, IIOP, RPC itp. Usługa internetowa sama w sobie jest zaimplementowaną technologią. W rzeczywistości można zaimplementować SOA za pomocą usługi sieciowej.

18) Omów różne podejścia do tworzenia usług sieciowych opartych na SOAP?

Możemy opracować usługę sieciową opartą na SOAP z dwoma różnymi typami podejść, takimi jak kontrakt-pierwszy i ostatni kontrakt. W pierwszym podejściu najpierw definiowany jest kontrakt, a następnie klasy są wyprowadzane z kontraktu, w drugim klasy są definiowane jako pierwsze, a następnie kontrakt jest wyprowadzany z tych klas.

19) Jeśli musisz wybrać jedno podejście, to co wybierzesz?

Z mojego punktu widzenia pierwsze podejście, czyli podejście pierwsze w umowie, jest bardziej wykonalne niż drugie, ale nadal zależy również od innych czynników.

20) Czy jest wymagana jakaś specjalna aplikacja, aby uzyskać dostęp do usługi sieciowej?

Nie, nie musisz instalować żadnej specjalnej aplikacji, aby uzyskać dostęp do usługi internetowej. Dostęp do usługi sieciowej można uzyskać z dowolnej aplikacji obsługującej żądania i odpowiedzi obiektów oparte na języku XML.

21) Czy możesz wymienić kilka darmowych i komercyjnych wdrożeń usług internetowych?

Implementacje, które znam, to Apache SOAP, JAX-WS Reference Implementation, JAX-RS Reference Implementation, Metro, Apache CXF, MS.NET i Java 6.

22) Nazwij przeglądarkę, która umożliwia dostęp do serwisu internetowego?

Obiekt JavaScript XmlHttpRequest jest wymagany, aby uzyskać dostęp do usługi internetowej za pośrednictwem przeglądarek. Przeglądarki obsługujące ten obiekt to Internet Explorer, Safari i przeglądarki oparte na Mozilli, takie jak FireFox.

23) Co to jest REST?

REST oznacza Representational State Transfer. Sam REST nie jest standardem, chociaż używa różnych standardów, takich jak HTTP, URL, XML / HTML / GIF / JPEG.webp (Reprezentacje zasobów) i text / xml, text / html, image / gif, image / jpeg.webp itp. (Typy MIME ).

24) W jaki sposób można udostępnić API użytkownikom?

Aby udostępnić użytkownikom API, można to łatwo zrobić za pomocą „otwartej tabeli”. Wszystko, co musisz zrobić, to napisać otwartą tabelę, która jest w zasadzie schematem XML wskazującym na usługę sieciową.

25) Wymień różne kanały komunikacji w serwisie internetowym?

Usługa internetowa jest zintegrowana z trzema protokołami, takimi jak HTTP / POST, HTTP / GET i SOAP. Zapewnia klientom trzy różne kanały komunikacji. Klient może wybrać dowolną metodę komunikacji zgodnie z wymaganiami.

26) Jak można dokumentować usługę internetową?

Usługi sieciowe są uważane za samodokumentujące, ponieważ dostarczają pełnej informacji o dostępnych metodach i parametrach używanych w standardzie opartym na XML, znanym jako WSDL. Można również podać więcej informacji w celu wyjaśnienia usług internetowych za pośrednictwem ich własnych atrybutów WebService i WebMethod.

27) W jakich sytuacjach potrzebujemy usług internetowych ASP.NET?

Usługi sieci Web ASP.NET są używane, gdy trzeba zaimplementować architekturę trójwarstwową w usłudze sieci Web. Pozwala na wygodne sposoby korzystania z komponentów średniego poziomu przez Internet. Główną zaletą usług sieci Web .NET jest to, że są one wystarczająco zdolne do komunikacji przez zapory, ponieważ używają protokołu SOAP jako protokołu transportowego.

28) Co to są technologie rozproszone?

Rosnący odsetek aplikacji rozproszonych spowodował wzrost popytu na technologie rozproszone. Umożliwia segmentację jednostek aplikacji i przenoszenie ich do różnych komputerów w różnych sieciach.

29) Rozróżnić usługi sieciowe, CORBA i DCOM?

Usługi internetowe przesyłają / odbierają komunikaty odpowiednio do / z aplikacji za pośrednictwem protokołu HTTP. Używa XML do kodowania danych.

CORBA i DCOM odpowiednio przesyłają / odbierają komunikaty do / z aplikacji za pośrednictwem niestandardowych protokołów, takich jak IIOP i RPC.

30) Czy potrafisz wymienić kilka zalet usług internetowych?

Największą zaletą usługi sieciowej jest to, że jest ona obsługiwana przez wiele różnych platform. Co więcej, w niedalekiej przyszłości usługi sieciowe mogą rozszerzyć swoje granice i ulepszyć nowe metody, które ułatwią klientom. Ulepszenie nie wpłynie na klientów, nawet jeśli oferują stare metody i parametry.

31) Czy możesz wymienić niektóre standardy używane w usługach internetowych?

Standardami używanymi w usługach internetowych są WSDL (używane do tworzenia definicji interfejsów), SOAP (używane do strukturyzowania danych), HTTP (kanały komunikacyjne), DISCO (używane do tworzenia dokumentów Discovery) oraz UDDI (używane do tworzenia rejestrów biznesowych).

32) Wyjaśnij w skrócie, czym jest DISCO?

DISCO to odkrywanie. Grupuje listę wzajemnie powiązanych usług internetowych. Organizacja, która świadczy usługi internetowe, wydaje plik DISCO na swoim serwerze, który zawiera linki do wszystkich świadczonych usług internetowych. Ten standard jest dobry, gdy klient już zna firmę. Może być również używany w sieci lokalnej.

33) Wyjaśnij w skrócie, czym jest UDDI?

UDDI (Universal Description, Discovery, and Integration) zapewnia skonsolidowany katalog usług WWW w Internecie. Klienci używają UDDI do wyszukiwania usług internetowych zgodnie z ich potrzebami biznesowymi. Zasadniczo obsługuje usługi internetowe różnych firm. Aby udostępniać usługi internetowe, musisz opublikować je w UDDI.

34) Wyjaśnij typy danych obsługiwane przez usługi sieciowe .NET?

Usługi sieciowe .Net używają standardów opartych na XML do przesyłania / odbierania informacji. Dlatego usługi internetowe .NET mogą działać tylko z typami danych znanymi w standardzie schematu XML. Podobnie jak FileSteam, Eventlog itp. Nie są rozpoznawane przez standardy schematu XML, a zatem nie są obsługiwane w usługach internetowych.

35) Jak testowana jest usługa sieciowa .NET?

ASP.NET rutynowo używa strony testowej, gdy wywołuje się adres URL pliku .asmx w dowolnej przeglądarce. Ta strona zawiera pełne informacje dotyczące usług internetowych.

36) Jak jest używana usługa sieciowa .NET?

Ponieważ wiemy, że usługi internetowe są zbudowane w oparciu o standardy XML. Dlatego klienci muszą mieć pełne zrozumienie komunikatów opartych na języku XML, aby wymieniać komunikaty. Klienci mogą komunikować się z usługami sieciowymi za pośrednictwem platformy .NET, która oferuje mechanizmy proxy. Te mechanizmy proxy zawierają szczegółowe informacje dotyczące udostępniania danych w ramach usług internetowych, które mogą być łatwo wykorzystywane przez klientów.

37) Czy możesz wymienić dwa rozwiązania firmy Microsoft dla aplikacji rozproszonych?

Dwa rozwiązania firmy Microsoft dla aplikacji rozproszonych to .NET Web Services i .NET Remoting.

38) Czym różnią się usługi sieci Web .NET od usług zdalnych .NET?

Pod względem protokołu .NET Web Service korzysta z protokołu HTTP, natomiast .NET Remoting korzysta z dowolnego protokołu, tj. TCP / HTTP / SMTP. Jeśli chodzi o wydajność, usługa .NET Remoting jest stosunkowo szybsza niż usługa sieci Web .NET. Ponieważ usługi sieci Web .NET są hostowane za pośrednictwem usług IIS, są zatem znacznie bardziej niezawodne niż usługi zdalne .NET.

39) Nazwij komponenty do publikacji podczas wdrażania usługi sieci Web?

Składniki, które należy opublikować podczas wdrażania usługi sieci Web, to: Web Application Directory, Webservice.asmx File, Webservice.Disco File, Web.Config File i Bin Directory.

40) Jakie kroki wykonuje klient, aby uzyskać dostęp do usługi sieciowej?

Przede wszystkim w swojej aplikacji klient tworzy odsyłacz do serwisu internetowego. Następnie generowana jest klasa proxy. Następnie tworzony jest obiekt klasy proxy i wreszcie dostęp do usługi sieciowej uzyskuje się za pośrednictwem tego obiektu proxy.

41) W jaki sposób usługi internetowe są wdrażane w .NET?

Aby zaimplementować usługi internetowe w .NET, używane są programy obsługi HTTP, które przerywają żądania do plików .asmx.

42) Wyjaśnij kilka wad buforowania odpowiedzi?

Buforowanie odpowiedzi jest bezużyteczne lub niekompetentne, gdy metoda przyjmuje dużą liczbę wartości, ponieważ buforowanie oznacza przechowywanie dużej ilości informacji. Ponadto, jeśli metoda zależy od zewnętrznego źródła informacji, a które nie są podane w parametrach, wówczas takie metody są pomijane.

43) Jakie jest alternatywne rozwiązanie buforowania odpowiedzi?

Zamiast buforowania odpowiedzi można użyć buforowania danych (System.Web.Caching.Cach).

44) Krótkie kilka wad używania metod GET i POST do komunikacji z usługą internetową?

Te metody są mniej bezpieczne i uniemożliwiają użytkownikom przekazywanie struktur i obiektów jako argumentów. Ponadto nie pozwala użytkownikom na przekazywanie argumentów ByRef.

45) Jak można uzyskać dostęp do klasy jako usługi internetowej?

Aby uzyskać dostęp do klasy jako usługi sieciowej, należy odziedziczyć klasę z klasy System.Web.Services.WebService i zakwalifikować klasę za pomocą atrybutu WebService.

46) W jaki sposób można uzyskać dostęp do metody klasy usług sieciowych przez Internet?

Aby uzyskać dostęp do metody klasy usług sieciowych przez Internet, należy zakwalifikować metodę z atrybutem WebMethod.

47) Jaka jest struktura wiadomości SOAP?

Komunikat SOAP składa się z koperty SOAP, nagłówków SOAP i treści protokołu SOAP.

48) Czy potrafisz wymienić różne rodzaje usług internetowych?

W sumie istnieją dwa typy usług internetowych, tj. Usługa sieciowa oparta na protokole SOAP i usługa sieciowa RESTful.

To pytanie zostało już wspomniane wcześniej.

49) Czym różnią się usługi sieciowe RESTful?

Usługi WWW RESTful nie zawierają kontraktu ani pliku WSDL.

50) Podaj kilka powodów, dla których warto korzystać z usługi internetowej RESTful?

Usługi sieciowe RESTFul są łatwe do wdrożenia i testowania. Obsługuje różne formaty danych, takie jak XML, JSON itp.

51) Wyjaśnij, czym są usługi sieciowe JAVA? Jakie są metody tworzenia usług internetowych?

Usługi sieciowe w języku Java zostały opracowane w celu tworzenia i wdrażania podstawowych usług internetowych na platformie JAVA.

Aby utworzyć usługi sieciowe, przyjmuje się dwa podejścia

  • Podejście odgórne
  • Podejście doładowania

52) Wyjaśnij, co to jest JAXP?

JAXP to API JAVA do przetwarzania XML, które umożliwia aplikacji zapis, odczyt, obróbkę i transformację danych XML. Podobnie, aby wykonać inne różne funkcje, istnieją inne API Java, jak również JAX-RPC, JAXM, JAXR, JAXB itp.

53) Wspomnij o strukturze powiązań JAXB?

Struktura powiązań JAXB jest dostępna w trzech pakietach Java

  • xml.bind: ten pakiet definiuje klasy abstrakcyjne i interfejsy, które są używane bezpośrednio z klasami zawartości
  • xml.bind.util: ten pakiet zawiera klasy narzędziowe, które mogą być wykorzystywane przez aplikacje klienckie do zarządzania zdarzeniami kierowania , cofania i sprawdzania poprawności
  • xml.bind.helper: ten pakiet pomocniczy zawiera częściowe implementacje niektórych interfejsów javax.xml.bind. Te interfejsy API nie mogą być bezpośrednio używane przez aplikacje korzystające z architektury JAXB

54) Podaj prosty przykład tego, jak dokument XML może być Marshalem i Unmarshalem w środowisku JAVA?

Marshalling to proces konwersji dokumentu XML do postaci czytelnej dla języka Java, podczas gdy UnMarshalling jest procesem odwrotnym do Marshalling. Zobaczmy, jak Java unmarshuje dokument XML, a następnie kieruje go z powrotem

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

// unmarshal from foo.xml

Unmarshaller u = jc.createUnmarshaller ();

FooObject fooObj =

(FooObject) u.unmarshal (nowy plik ("foo.xml"));

// kieruj do sytem.out

Marshaller m = jc.createMarshaller ();

m.marshal (fooObj, System.out);

55) Wyjaśnij, co robi Marshaller, jeśli właściwość jaxb.encoding nie została zadeklarowana?

Domyślnie Marshaller użyje „UTF-8”, jeśli właściwość jaxb.encoding nie zostanie zadeklarowana.

56) Wspomnij, jakie typy walidacji może wykonać klient JAXB?

Istnieją dwa typy sprawdzania poprawności klienta JAXB, które może wykonywać JAXB

  • Unmarshal Time Validation
  • Walidacja na żądanie

57) Wspomnieć, jakie są trzy sposoby radzenia sobie ze zdarzeniem napotkanym podczas operacji marszałka, unmarshal i walidacji?

  • Korzystanie z domyślnej procedury obsługi zdarzeń
  • Zarejestruj i zaimplementuj niestandardową procedurę obsługi zdarzeń
  • Użyj narzędzia ValidationEventCollector

58) Wyjaśnij, gdzie znajduje się kompilator JAXB?

Kompilator powiązań schematu JAXB znajduje się w katalogu / jaxb / bin. W tym katalogu znajdują się dwa skrypty, xjc.sh (Solaris / Linux) i xjc.bat (Windows).

59) W jakich przypadkach musisz dostosować domyślne powiązanie?

W niektórych przypadkach wymagane jest dostosowanie domyślnego powiązania, takiego jak

  • Tworzenie dokumentacji API dla pakietów JAXB pochodnych schematu, klas, metod i stałych
  • Nadawanie niestandardowych nazw semantycznie znaczących dla przypadków, których domyślne odwzorowanie nazwy XML na identyfikator Java nie może obsłużyć automatycznie
  • Zastępowanie domyślnego powiązania, które określa, że ​​grupa modeli powinna być dołączona do klasy, a nie do listy

60) Wyjaśnij, czym jest personalizacja w tekście?

Dostosowanie do powiązań JAXB za pomocą wbudowanych deklaracji powiązań w pliku schematu XML, które mają postać elementów osadzonych w elementach schematu .

61) Wyjaśnij, co to jest podpis XML?

XML może służyć do podpisywania dowolnych danych, niezależnie od tego, czy są to pliki binarne, czy XML. Dane są rozpoznawane za pomocą identyfikatorów URI w co najmniej jednym elemencie odniesienia. Jest opisany w jednej lub kilku formach, takich jak oderwany, kopertowy lub kopertowy.

62) Wyjaśnij, co to jest Stax?

Stax oznacza Streaming API for XML; jest to interfejs API do odczytu i zapisu dokumentów XML, wywodzący się z języka programowania JAVA.

63) Wspomnij, jakie są typowe interfejsy API XML?

Zwykłe interfejsy API XML obejmują

  • API oparte na DOM lub Drzewo: Cały dokument jest wczytywany do pamięci jako struktura drzewa dla losowej dostępności przez wywołanie aplikacji
  • Interfejsy API oparte na zdarzeniach: aplikacja rejestruje się, aby pobierać zdarzenia w momencie napotkania jednostek w dokumencie źródłowym

64) Wyjaśnij, co to jest parsowanie push i analizowanie pull?

  • Pull Parsing: Streaming pull parsing odnosi się do modelu programowania, w którym aplikacja kliencka wywołuje metody z biblioteki analizującej XML, gdy potrzebowała komunikować się z zestawem informacji XML - co oznacza, że ​​klient otrzyma dane XML tylko wtedy, gdy zostanie o to poproszony
  • Parsowanie wypychane: w analizie wypychanej parser przesyła zdarzenia analizy lub dane XML do aplikacji. W modelu push parser przejmuje kontrolę nad procesem parsowania, a parser wywołuje zaimplementowane metody obsługi.

65) Wyjaśnij, na jakiej technologii opiera się ochrona XWS? Czy wymienić opcje zapewniane przez zabezpieczenia XWS do zabezpieczania aplikacji JAX-RPC?

Bezpieczeństwo XWS opiera się na zabezpieczaniu usług internetowych opartych na JAX-RPC oraz na samodzielnej aplikacji opartej na SAAJ. W celu zabezpieczenia aplikacji JAX-RPC dostępne są opcje zapewniane przez zabezpieczenia XWS

  • Podpis cyfrowy XML
  • Szyfrowanie XML
  • Weryfikacja tokena nazwy użytkownika
  • Interfejsy API struktury bezpieczeństwa XWS

66) Wymień sześć pakietów dostępnych w XML Digital Signature API?

Interfejs API podpisu cyfrowego to

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

67) Wyjaśnij, czym jest JAXR?

JAXR to API programowania JAVA dla aplikacji platformy Java, które umożliwiają dostęp i programową interakcję z różnymi rodzajami rejestrów metadanych.

68) Wyjaśnij, z czego składa się architektura JAXR?

Architektura JAXR składa się z klienta JAXR i dostawcy JAXR.

  • Klient JAXR: jest to program kliencki, który używa interfejsu API JAXR do korzystania z rejestru za pośrednictwem dostawcy JAXR
  • Dostawca JAXR: jest to implementacja interfejsu API JAXR, która zapewnia dostęp do określonego dostawcy rejestru lub do klasy dostawców rejestrów zbudowanych na wspólnych specyfikacjach.

69) Wyjaśnij, czym są modele wiadomości JAXM?

Istnieją dwa typy modeli przesyłania wiadomości: synchroniczne i asynchroniczne JAXM

  • Synchroniczny model przesyłania wiadomości: w tego typu modelu klient bezpośrednio komunikuje się ze źródłem. W tym przypadku klient wyśle ​​żądanie i czeka.
  • Asynchroniczny model obsługi wiadomości: w tym modelu klient kieruje wiadomość do dostawcy wiadomości i wraca. Dostawca wiadomości następnie kieruje wiadomość do końcowego źródła.

70) Wyjaśnij, co to jest UDDI, DISCO i WSDL?

  • UDDI: Oznacza uniwersalny opis, wykrywanie i ja. Jest to katalog używany do publikowania i odnajdywania publicznych usług internetowych
  • DISCO: Powszechnie nazywa się to odkryciem. Łączy wspólne usługi i ujawnia dokument schematów usług internetowych
  • WSDL: oznacza język opisu usług WWW (WSDL). Służy do opisywania usług internetowych. Opis obejmuje adresy URL usług internetowych, właściwości i metody obsługiwane przez usługi internetowe, typ danych, które obsługują, oraz szczegóły protokołu, który obsługuje