Webszolgáltatások (WS)

Hasonló dokumentumok
Webtechnológiák információs redszerekben. Bevezető 1.

Webtechnológiák információs redszerekben. Bevezető 1.

Webtechnológiák információs redszerekben. Bevezető 1.

ColourSMS Protokol definíció. Version 1.2

Mikor? Milyen alkalmazásnál?

Webtechnológiák információs redszerekben. Technológiai bevezető 1.

Szolgáltatásorientált rendszerintegráció. SOA-alapú rendszerintegráció. Web-szolgáltatások: SOAP, WSDL

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)

API tervezése mobil környezetbe. gyakorlat

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

RIA Rich Internet Application

Rétegezett architektúra HTTP. A hálózatfejlesztés motorját a hálózati alkalmazások képezik. TCP/IP protokoll készlet

WWW Kliens-szerver Alapfogalmak Technológiák Terv. Web programozás 1 / 31

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

Az alábbi kód egy JSON objektumot definiál, amiből az adtokat JavaScript segítségével a weboldal tartalmába ágyazzuk.

Bevezetés Működési elv AJAX keretrendszerek AJAX

WEB-PROGRAMOZÁS II. 1. Egészítse ki a következő PHP kódot a következők szerint: a,b,c,d: <?php. interface Kiir { public function kiir();

MicroSigner Közvetítő Szerver fejlesztői dokumentáció

Szolgáltatás Orientált Architektúra és több felhasználós adatbázis használata OKF keretein belül. Beke Dániel

MicroSigner Közvetítő Szerver fejlesztői dokumentáció

Testreszabott alkalmazások fejlesztése Notes és Quickr környezetben

A webhelyhez kötődő szoftverek architektúrája

Osztott alkalmazások fejlesztési technológiái Áttekintés

SOAP komponensek Delphiben

WebService tesztelés. SOAPui Pro, GreenPepper és Confluence használatával. Verhás & Verhás Szoftver Manufaktúra KNOW-HOW

Web-fejlesztés NGM_IN002_1

Elektronikus levelek. Az informatikai biztonság alapjai II.

Számítógépes Hálózatok Felhasználói réteg DNS, , http, P2P

Felhasználói réteg. Számítógépes Hálózatok Domain Name System (DNS) DNS. Domain Name System

JAVA webes alkalmazások

Web Services. (webszolgáltatások): egy osztott alkalmazásfejlesztési plattform

Webes alkalmazások fejlesztése

INTERNET. internetwork röviden Internet /hálózatok hálózata/ 2010/2011. őszi félév

QBE Édes Otthon lakásbiztosítás tarifáló webservice. Fejlesztői dokumentáció 1.0.2

MicroSigner Közvetítő Szerver fejlesztői dokumentáció

Debreceni Egyetem Informatikai Kar. Szolgáltatás-orientált programozás az Oracle-ben

Symfony kurzus 2014/2015 I. félév. Controller, Routing

Szolgáltatás technológiák (WS, WS-*) Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Web programoz as

Google Web Toolkit. Elek Márton. Drótposta kft.

OEP Betegéletút lekérdezés háziorvosok és vénytörténet lekérdezés patikák számára. API dokumentáció. verzió: 2.01

Webes alkalmazások fejlesztése 12. fejezet. Szolgáltatás alapú kommunikáció (WCF) Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar

fájl-szerver (file server) Az a számítógép a hálózatban, amelyen a távoli felhasználók (kliensek) adatállományait tárolják.

Hálózatkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Hálózatkezelés / 20

AJAX Framework építés. Nagy Attila Gábor Wildom Kft.

Nyílt forrású, webes WGS84-EOV transzformáció

Webszolgáltatások kommunikációs overhead-jének becslése

Webes alapozás. url, http, szerver oldal

Valimed API. REST API a magyarországi orvos pecsétszámok validálására

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

A Http és a PHP kapcsolata. Web-Sky Consulting Kft Tóth Imre 2009

Internet technológiák

Flex: csak rugalmasan!

SZAKKÉPZÉSI KERETTANTERV a(z) MOBILALKALMAZÁS FEJLESZTŐ SZAKKÉPESÍTÉS-RÁÉPÜLÉSHEZ

BEVEZETÉS AZ INTERNET ÉS A WORLD WIDE WEB VILÁGÁBA. Kvaszingerné Prantner Csilla, EKF

Elosztott rendszerek

Web-fejlesztés NGM_IN002_1

LMS, IMS, LTI, WSDL, SOAP, meg a biztonság

MVC. Model View Controller

Olyan eszközre van szükség, amelynél a webszerkesztés folyamatát a fejlesztő, nem pedig a program vezérli

Hálózatbiztonság Androidon. Tamas Balogh Tech AutSoft

1. fejezet Bevezetés a web programozásába (Balássy György munkája) Az internet működése... 11

Java és web programozás

applikációs protokollok

COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

Hálózati architektúrák és Protokollok GI Kocsis Gergely

KIS. KELER Zrt. Az STP KID megvalósítása. KELER Internetwork System

Interaktív webes térképezés GRASS GIS 7-tel. A Web Processing Service bemutatása

Kiknek szól ez a könyv? Miről szól a könyv? Hogyan épül fel a könyv? Mire van szükség a könyv használatához? Szokások Forráskód Hibajegyzék

Atlon XML interface fejlesztői dokumentáció. Dokumentum verzió: 3.0

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

12.óra jquery Framework #1. Gyimesi Ákos

Tematika A web története Kliens-szerver modell Web alapismeretek Fejlesztési eszközök. Sapientia Erdélyi Magyar Tudományegyetem, Csíkszereda

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Élő webes alkalmazások rendszerfelügyelete cím- és tartalomteszteléssel

Enterprise extended Output Management. exom - Greendoc Systems Kft. 1

SOA modell: Ez az interfész definiálja az elérhető adatokat, és megadja, hogy hogyan lehet azokhoz hozzáférni.

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

WLAN router telepítési segédlete

Ajax és Echo 2. Bokor Attila

A Java EE 5 plattform

Alapfogalmak, WWW, HTTP

Komponens modellek. 3. Előadás (első fele)

Java Business Integration szolgáltatásalapú architektúra JavaEE környezetben. Simon Géza Zsemlye Tamás

A SZOFTVERTECHNOLÓGIA ALAPJAI

Hálózati architektúrák és Protokollok GI Kocsis Gergely

Szolgáltatásorientált rendszerintegráció. SOA-alapú rendszerintegráció. Enterprise Service Bus (ESB) Ercsényi András, BME IIT, 2011.

Miért ASP.NET? Egyszerű webes alkalmazás fejlesztése. Történet ASP ASP.NET. Működés. Készítette: Simon Nándor

Bevezető. Servlet alapgondolatok

WLAN router telepítési segédlete

Madarassy László, mérnök, BME - Mobil Innovációs Központ. lmadarassy@mik.bme.hu

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

RIA Rich Internet Application

INFORMÁCIÓÁTADÁSI SZABÁLYZAT

A számítástechnika gyakorlata WIN 2000 I. Szerver, ügyfél Protokoll NT domain, Peer to Peer Internet o WWW oftp opop3, SMTP. Webmail (levelező)

Java Servlet technológia

Számítógépes Hálózatok 2012

MailMasterPlus API. fejlesztői dokumentáció

Weboldalak biztonsága

Átírás:

Webszolgáltatások (WS)

Webszolgáltatások fogalma IBM (lényege) Egy interface, mely a hálózaton keresztül szabványos XML üzenetekkel érhető el és hozzá formálsi XML leírás tartozik. (soap, wsdl) Sun Szoftverelemek, melyeket az alkalmazások felkutatnak, egyesíthetnek és átszervezhetnek, hogy megoldást találjanak a felhasználó problémájára. Elsősorban a Java nyelvre és az XML-re támaszkodnak. k 2

Webszolgáltatások fogalma Microsoft (többféleképpen, lényeg) Nem objektummodellekre épít, hanem mindenhonnan elérhető webprotokollokon és adatformátumokon keresztül használjuk. Nem foglalkozik a megvalósítással, bármilyen rendszer, bármilyen programnyelv lehet a kiszolgáló. Nem szorítja meg az XML formátumot. 3

Webszolgáltatások fogalma Bármilyen rendszer Bármilyen programnyelv HTTP Mime típusok Web itt hálózat, nem feltétlenül Internet (Világháló, World Wide Web) Egységesítés, modularitás (verziózás) Kérés-válasz típusú (Request-Response, Rq/Rs) 4

Rész(let)ek HTTP(S) Hívás 1 GET URL (http://server/service?param1=ertek1&...) / p Név-érték párok (nincs struktúra, csak felsorolás) Urlencoding (értékek) Karakter ascii kódja hexadecimálisan % jel után ( = + ) 2047 byte adat lehet a kérésben 5

Rész(let)ek HTTP(S) Hívás 2 POST URL (http://server/service) / Request data: bármi Request header Content-Type» application/x-www-form-urlencoded (Név-érték párok (nincs struktúra, csak felsorolás))» text/xml (lehet strukturálni) 6

Rész(let)ek HTTP(S) Eredmény / Válasz Bármi lehet Általában szöveges adatok Response header Content-Type HTML TEXT XML JSON (JavaScript Object Notation) 7

Példa: XML <?xml version="1.0" encoding="utf-8"?> <direct-messages type="array"> <direct_message> <text>hello</text> <sender> <name>teszt Elek</name> </sender> </direct-message> </direct-messages> JSON [ { "text":"hello", "sender":{ " "name":"teszt Elek" } } ] 8

JSON (JavaScript Object Notation) Nyelvtő független szöveg formátum ( C-szerű leírás ) Emberek számára is olvasható írható, Könnyen feldolgozható és előállítható, adatcsere-formátum. A JSON-nak két típusú felépítése lehetséges: név-érték érték párok halmaza értékek rendezett halmaza (pl. tömb, vektor) JSON ELEM LÉTREHOZÁSA PHP-BAN <?php $array = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($array); // Eredmény: {"a":1,"b":2,"c":3,"d":4,"e":5}" "b" " " "d" " "?> JSON ELEM OBJEKTUMMÁ ALAKÍTÁSA JAVASCRIPTBEN <script type="text/javascript"> t/j t" var response = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; var result = eval("("+response+")"); alert(result.a); a); // Eredmény: 1 alert(result.b); // Eredmény: 2 </script> 9

Rész(let)ek Eddigi szoftverarchitektúra REST Representational state transfer Ábrázoló Állapot Átvitel API vs. Web Service 10

Rész(let)ek Kliens Bármilyen rendszer Bármilyen böngésző Bármilyen nyelven írt alkalmazás Web application Desktop application HTTP hívás kezdeményezése szövegfeldolgozása Szövegműveletek XML programkönyvtárak JSON programkönyvtárak 11

Rész(let)ek Szerver Bármilyen Bármilyen nyelven írt web alkalmazás HTTP kérés kiszolgálása Szövegműveletek (mint, ha HTML-t adna vissza) XML programkönyvtárak JSON programkönyvtárak 12

W3C ajánlás (szabványosítás felé) SOAP Simple Object Access Protocol Verzió: 1.2 SOAP kérés Request headerben Content-Type: t text/xmlt/ SOAPAction Tartalom XML saját névtérben 13

W3C ajánlás (szabványosítás felé) SOAP válasz Response headerben Content-Type: text/xml Válasz ugyanolyan borítékban (Envelope) található, mint a kérés Tartalom XML saját névtérben 14

Példa: Host: server.com Content-Length: 100 SOAPAction: "http://server/service" Content-Type: text/xml;charset=utf-8 HTTP/1.1 1 200 OK Content-Length: 100 Content-Type: text/xml;charset=utf-8 <soapenv:envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/e nvelope/> <soapenv:header> </soapenv:header> <soapenv:body> </soapenv:body> </soapenv:envelope> 15

W3C ajánlás (szabványosítás felé) WSDL Web Service Definition Language Verzió: 1.1 Típus definíció (types) Üzenet definíció (message) (milyen típusúak?) Művelet definíció (porttype) (melyik üzenetre milyen a válaszüzenet?) Végpont és műveletek összekötése (binding) (protocol definíció) GET,POST,SOAP Vannak új irányok: JMS; Fájlírás, -figyelés Végpont definíció (service) Új irányok/fejlesztések WADL (Web Application Definition Language) WSEL (Web Service Endpoint Language) 16

Biztonság HTTP HTTP Basic Authentication Alkalmazásba belépés Cookie, session Név/jelszó pár olvasható HTTPS Csatorna titkosítva Kliens ellenőrzi a szervert 17

Biztonság HTTPS folytatás Szerver ellenőrzi a klienst Client certificate betöltése szerver oldalon Minden szolgáltatónak saját megoldása lehet! Alkalmazás bejelentkeztetése (fejlesztő azonosítója) lehet, hogy csak licence kódot kér egy paraméterként Felhasználó bejelentkeztetése (használó azonosítója) Web alkalmazások Callback Desktop alkalmazásoka a token 18

Biztonság Bejelentkezés folyamata (Google) 19

Tesztelés SoapUI Felület WSDL import Validálás (Rq/Rs) Példa BarCode39 project 20

WS keresés a neten http://seekda.com/ http://seekda.com/most_used_services?p=30 http://seekda.com/search?q=country%3ahu 21

Példa BarCode vonalkód generálás SoapUI-ban már láttuk Böngésző http://seekda.com/providers/webservicex.com/barcode GET, POST, SOAP 22

Irodalom/Linkek http://www.w3.org/tr/soap/ http://www.w3.org/tr/wsdl http://www.json.org/json-hu.html http://www.xfront.com/rest-web-services.html /REST S h http://en.wikipedia.org/wiki/soap_(protocol) http://en.wikipedia.org/wiki/web_application_descr iption_language 23