160 likes | 245 Views
WEB SERVICE. Stefan Rutkowski. Web SERVICE. Co to jest WEB SERVICE każdy wie . Co to jest WEB SERVICE ?.
E N D
WEB SERVICE Stefan Rutkowski
Web SERVICE • Co to jest WEB SERVICE każdy wie
Co to jest WEB SERVICE ? • Usługi Web Services umożliwiają aplikacjom wymienianie się danymi oraz – co jeszcze istotniejsze – wykorzystywanie możliwości innych aplikacji, niezależnie od tego, jak zostały zbudowane, w jakim systemie operacyjnym działają oraz za pomocą jakich urządzeń uzyskuje się do nich dostęp. Mimo że usługi Web Services działają niezależnie od siebie, mogą łączyć się w luźne konfiguracje usług, które wykonują określone zadania.
Jak to może wyglądać ? MVC Widok, kontroler Model
Web service - jakie to proste • Web Services jest nazwą dla technologii dostępu do zdalnych procedur wykorzystująca do komunikacji standardowe techniki przekazywania danych - HTTP - oraz XML jako źródło danych. • Żądania są, w postaci XML, wysyłane przez POST protokołem HTTP, a następnie wynik działania zwracany jest do użytkownika, także w postaci XML.
Standardy tworzenia danych XML • SOAP (Simple Object Access Protocol) • XML-RPC (XML-Remote Procedure Call) • OPML (Outline Processor Markup Language)
SOAP <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Header> ... </soap:Header> <soap:Body> ... <soap:Fault> ... </soap:Fault> </soap:Body> </soap:Envelope>
XML-RPC <?xml version="1.0"?> <methodCall> <methodName>examples.getStateName</methodName <params> <param> <value> <i4>41</i4> </value> </param> </params> </methodCall>
Serwery • IIS • Apache • Java BOSS
Klienci • Języki: C++, C#, VB .NET, PHP, Java, Perl • Systemy: Windows, UNIX, Linux, … • Urządzenia: PC, Palmtopy, Tablety PC, Telefony komórkowe, Zegarki, … • Aktywne strony internetowe • Aplikacje okienkowe • Aplikacje konsolowe
PHP != ASP.NET • PHP = TANIOCHA • ASP.NET = ŁATWIZNA
Przykład w PHP • Web Services Description Language (WSDL) Język WSDL definiuje zestaw kilku struktur XML pozwalających na pełny opis usług (struktury danych wymienianych z usługą, sposób połączenia z usługą [najczęściej HTTP]). • Tworzenie skryptu serwera • Tworzenie skryptu klienta
Serwer • <?phpini_set("soap.wsdl_cache_enabled", "0"); //wyłączamy cache dla web serwices na czas tworzenia aplikacji$server = new SoapServer('wsdl/plik.wsdl'); //wczytujemy plik wsdlfunction dodaj($a, $b) //nasza funkcja, którą udostępnimy za pomocą web services{return $a+$b;}$server->addFunction("dodaj"); //dodajemy funkcję do serwera$server->handle(); //obsługujemy zapytania kierowane do serwera?>
Klient • <?phpini_set("soap.wsdl_cache_enabled", "0");$client = new SoapClient('wsdl/plik.wsdl'); //tworzymy obiekt klientaprint_r ($client->dodaj("10.3", "6.255")); //wywołujemy funkcję na serwerze i wyświetlamy wynik?>
Przykład w ASP • Serwer File -> New -> WebSite -> ASP.NET Web Service WebService
Dziękuję za uwagę • Materiały można pobrać ze strony http://uslugiinformatyczne.net.pl/programowanie