SlideShare uma empresa Scribd logo
1 de 43
Introduction to Web Services Sabyasachi Ghosh [email_address]
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Client-Server Technology CLIENT SERVER NETWORK Request Request Request Response Response
The OSI Model
Introduction to Sockets ,[object Object],[object Object],[object Object],[object Object]
Sockets Sockets are generalized form of inter-process communication (IPC)
RPC – Remote Procedure Calls ,[object Object],[object Object],Ref: Wikipedia
RPC – How does it work ?  ,[object Object],[object Object],[object Object]
RPC – More formally: ,[object Object],[object Object],[object Object],[object Object],[object Object],Ref: Wikipedia
XML: Introduction ,[object Object],[object Object],[object Object],[object Object],[object Object],Markup: Information added to a text to make its structure comprehensible
XML: Differences with HTML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
XML: Example <?xml version=&quot;1.0&quot;?> < catalog >  < product   category = &quot;mobile phone&quot;> <mfg>Nokia</mfg><model>8890</model> <description> Intended for EGSM 900 and GSM 1900  networks … </description> <clock setting= &quot;nist&quot; alarm = &quot;yes&quot;/> </ product > < product  category = &quot;mobile phone&quot;>  <mfg>Ericsson</mfg><model>A3618</model> <description>...</description> </ product > </ catalog >
XML: More on it ,[object Object],[object Object],[object Object],[object Object]
XML RPC
JSON ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
{ &quot;firstName&quot;: &quot;John&quot;, &quot;lastName&quot;: &quot;Smith&quot;, &quot;age&quot;: 25, &quot;address&quot;: { &quot;streetAddress&quot;: &quot;21 2nd Street&quot;, &quot;city&quot;: &quot;New York&quot;, &quot;state&quot;: &quot;NY&quot;, &quot;postalCode&quot;: &quot;10021&quot; }, &quot;phoneNumber&quot;: [ { &quot;type&quot;: &quot;home&quot;, &quot;number&quot;: &quot;212 555-1234&quot; }, { &quot;type&quot;: &quot;fax&quot;, &quot;number&quot;: &quot;646 555-4567&quot; }   ] }
What is a Web Service ,[object Object],[object Object],Ref: Java Web Services, Chappel et al, O'Reilly
Web Services: Alternate definition ,[object Object],[object Object],Copyright 2005 John Cowan under GPL
Service Oriented Architecture ,[object Object],[object Object]
Service Oriented Architecture Requestor Providers Registry FIND , UDDI BIND , SOAP/WSDL PUBLISH,  UDDI
Components of SOA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SOA: Publishing (dynamic) Provider Registry Here is my service !
SOA: Locating Service Requestor Registry Where is the service?  Find it here !
SOA: Binding Requestor Registry How can I access ? Here is how ! Provider What is the temperature today?  40 C
Characteristics of a Web Service ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ref: Java Web Services, Chappel et al, O'Reilly
Major Technologies for WS ,[object Object],[object Object],[object Object],Ref: Java Web Services, Chappel et al, O'Reilly
SOAP ,[object Object],[object Object],[object Object]
SOAP: Layers SOAP-ENV:Envelope SOAP-ENV:Header SOAP-ENV:Body
SOAP: Example POST /InStock HTTP/1.1 Host: www.example.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: 299 <?xml version=&quot;1.0&quot;?> < soap:Envelope  xmlns:soap=&quot;http://www.w3.org/2003/05/soap-envelope&quot;> < soap:Header > </ soap:Header > < soap:Body > <m:GetStockPrice xmlns:m=&quot;http://www.example.org/stock&quot;> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </ soap:Body > </ soap:Envelope >
Creating a SOAP message <student> <roll>120</roll> <firstName>Kiran</firstName> <lastName>Reddy</lastName> <grades> <english>A</english> <maths>B</maths> </grades> </student> <?xml version=&quot;1.0&quot;?> <soap:Envelope xmlns:soap=&quot;http://www.w3.org/2003/05/soap-envelope&quot;> <soap:Header> </soap:Header> <soap:Body> <student> <roll>120</roll> <firstName>Kiran</firstName> <lastName>Reddy</lastName> <grades> <english>A</english> <maths>B</maths> </grades> </student> </soap:Body> </soap:Envelope>
SOAP: Envelop ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SOAP: Header & Body ,[object Object],[object Object],[object Object]
SOAP: Fault ,[object Object],[object Object]
RESTful Architecture
HTTP: Introduction ,[object Object],[object Object]
HTTP: How does it work? ,[object Object],[object Object]
HTTP: How does it work? ,[object Object]
HTTP: Request/Response Client Request GET /vnav/labs/PHP/HTTP.php HTTP/1.1 Host: loadaveragezero.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.14) Gecko/20110218 Firefox/3.6.14 (.NET CLR 3.5.30729) Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 ... Server Response HTTP/1.1 200 OK Server: Apache/1.3.41 (Unix) Content-type: application/xhtml+xml; charset=UTF-8 ...
What is REST? ,[object Object],[object Object],[object Object]
REST: The other verbs ,[object Object],[object Object],[object Object],[object Object]
RESTful Application Cycle Resources are identified by URIs ↓ Clients communicate with resources via requests using astandard set of methods ↓ Requests and responses contain resource representations informats identified by media types ↓ Responses contain URIs that link to further resources
REST: Give Everything an ID ,[object Object],[object Object],[object Object],[object Object],[object Object]
Q & A Thank You!

Mais conteúdo relacionado

Mais procurados

Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)
Martin Necasky
 

Mais procurados (20)

Json
JsonJson
Json
 
Simple object access protocol(soap )
Simple object access protocol(soap )Simple object access protocol(soap )
Simple object access protocol(soap )
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
Soap Vs Rest
Soap Vs RestSoap Vs Rest
Soap Vs Rest
 
Web Services
Web ServicesWeb Services
Web Services
 
Webservices
WebservicesWebservices
Webservices
 
Web services SOAP
Web services SOAPWeb services SOAP
Web services SOAP
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Java web services
Java web servicesJava web services
Java web services
 
Introduction to the Web API
Introduction to the Web APIIntroduction to the Web API
Introduction to the Web API
 
Controls
ControlsControls
Controls
 
JSON: The Basics
JSON: The BasicsJSON: The Basics
JSON: The Basics
 
JavaScript - Chapter 12 - Document Object Model
  JavaScript - Chapter 12 - Document Object Model  JavaScript - Chapter 12 - Document Object Model
JavaScript - Chapter 12 - Document Object Model
 
jQuery
jQueryjQuery
jQuery
 
Introduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web ServicesIntroduction to SOAP/WSDL Web Services and RESTful Web Services
Introduction to SOAP/WSDL Web Services and RESTful Web Services
 
jQuery for beginners
jQuery for beginnersjQuery for beginners
jQuery for beginners
 
Angular 8
Angular 8 Angular 8
Angular 8
 
Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)Web Services - Architecture and SOAP (part 1)
Web Services - Architecture and SOAP (part 1)
 
Soap vs rest
Soap vs restSoap vs rest
Soap vs rest
 
Soap and restful webservice
Soap and restful webserviceSoap and restful webservice
Soap and restful webservice
 

Destaque

Destaque (20)

Web Services Tutorial
Web Services TutorialWeb Services Tutorial
Web Services Tutorial
 
Web service introduction
Web service introductionWeb service introduction
Web service introduction
 
Web Services
Web ServicesWeb Services
Web Services
 
Introduction to SNMP
Introduction to SNMPIntroduction to SNMP
Introduction to SNMP
 
Introduction to HTTP protocol
Introduction to HTTP protocolIntroduction to HTTP protocol
Introduction to HTTP protocol
 
Understanding the Web through HTTP
Understanding the Web through HTTPUnderstanding the Web through HTTP
Understanding the Web through HTTP
 
JavaOne 2015 : How I Rediscovered My Coding Mojo by Building an IoT/Robotics ...
JavaOne 2015 : How I Rediscovered My Coding Mojo by Building an IoT/Robotics ...JavaOne 2015 : How I Rediscovered My Coding Mojo by Building an IoT/Robotics ...
JavaOne 2015 : How I Rediscovered My Coding Mojo by Building an IoT/Robotics ...
 
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
 
JavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote PresentationJavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote Presentation
 
Web protocols for java developers
Web protocols for java developersWeb protocols for java developers
Web protocols for java developers
 
Snmp protocol
Snmp protocolSnmp protocol
Snmp protocol
 
Les web services
Les web servicesLes web services
Les web services
 
SNMP
SNMPSNMP
SNMP
 
Wsdl
WsdlWsdl
Wsdl
 
WebSocket in Enterprise Applications 2015
WebSocket in Enterprise Applications 2015WebSocket in Enterprise Applications 2015
WebSocket in Enterprise Applications 2015
 
Java 8 in Anger (JavaOne)
Java 8 in Anger (JavaOne)Java 8 in Anger (JavaOne)
Java 8 in Anger (JavaOne)
 
Stop doing scrum; start doing agile
Stop doing scrum; start doing agileStop doing scrum; start doing agile
Stop doing scrum; start doing agile
 
Web Services in the Real World
Web Services in the Real WorldWeb Services in the Real World
Web Services in the Real World
 
04 Client Server Technology
04 Client Server Technology04 Client Server Technology
04 Client Server Technology
 
Lecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange PatternsLecture 10 - Message Exchange Patterns
Lecture 10 - Message Exchange Patterns
 

Semelhante a Intro to web services

Communication Protocols And Web Services
Communication Protocols And Web ServicesCommunication Protocols And Web Services
Communication Protocols And Web Services
Omer Katz
 

Semelhante a Intro to web services (20)

SOA and web services
SOA and web servicesSOA and web services
SOA and web services
 
jkljklj
jkljkljjkljklj
jkljklj
 
SOAP Overview
SOAP OverviewSOAP Overview
SOAP Overview
 
Web services - REST and SOAP
Web services - REST and SOAPWeb services - REST and SOAP
Web services - REST and SOAP
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
 
SOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIESSOAP WEB TECHNOLOGIES
SOAP WEB TECHNOLOGIES
 
Introduction to SOAP
Introduction to SOAPIntroduction to SOAP
Introduction to SOAP
 
Web Services
Web ServicesWeb Services
Web Services
 
Web Services
Web ServicesWeb Services
Web Services
 
Web services for developer
Web services for developerWeb services for developer
Web services for developer
 
Understanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company indiaUnderstanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company india
 
Communication Protocols And Web Services
Communication Protocols And Web ServicesCommunication Protocols And Web Services
Communication Protocols And Web Services
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
 
Web services Concepts
Web services ConceptsWeb services Concepts
Web services Concepts
 
soap toolkit
soap toolkitsoap toolkit
soap toolkit
 
Restful web services
Restful web servicesRestful web services
Restful web services
 
Soap xp-wg
Soap xp-wgSoap xp-wg
Soap xp-wg
 
web programming
web programmingweb programming
web programming
 
SOA web services concepts
SOA web services conceptsSOA web services concepts
SOA web services concepts
 
Web-Services!.pptx
Web-Services!.pptxWeb-Services!.pptx
Web-Services!.pptx
 

Mais de Neil Ghosh (10)

GOLD AG Report in IEEE Hyderabad AGM 2013
GOLD AG Report in IEEE Hyderabad AGM 2013GOLD AG Report in IEEE Hyderabad AGM 2013
GOLD AG Report in IEEE Hyderabad AGM 2013
 
Introduction to JavaFx and HTML5
Introduction to JavaFx and HTML5Introduction to JavaFx and HTML5
Introduction to JavaFx and HTML5
 
GOLD at IEEE Hyderabad SAGM 2012
GOLD at IEEE Hyderabad SAGM 2012GOLD at IEEE Hyderabad SAGM 2012
GOLD at IEEE Hyderabad SAGM 2012
 
Astronomy at Pecha Kuch Night Hyderabad Volume 9
Astronomy at Pecha Kuch Night Hyderabad Volume 9 Astronomy at Pecha Kuch Night Hyderabad Volume 9
Astronomy at Pecha Kuch Night Hyderabad Volume 9
 
Astro quiz
Astro quizAstro quiz
Astro quiz
 
IEEE GOLD STEP
IEEE GOLD  STEPIEEE GOLD  STEP
IEEE GOLD STEP
 
RestFull Webservices with JAX-RS
RestFull Webservices with JAX-RSRestFull Webservices with JAX-RS
RestFull Webservices with JAX-RS
 
Introduction to javaScript
Introduction to javaScriptIntroduction to javaScript
Introduction to javaScript
 
Creating REST Webservice With NetBeans
Creating REST Webservice With NetBeansCreating REST Webservice With NetBeans
Creating REST Webservice With NetBeans
 
Edited
EditedEdited
Edited
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Intro to web services

  • 1. Introduction to Web Services Sabyasachi Ghosh [email_address]
  • 2.
  • 3. Client-Server Technology CLIENT SERVER NETWORK Request Request Request Response Response
  • 5.
  • 6. Sockets Sockets are generalized form of inter-process communication (IPC)
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. XML: Example <?xml version=&quot;1.0&quot;?> < catalog > < product category = &quot;mobile phone&quot;> <mfg>Nokia</mfg><model>8890</model> <description> Intended for EGSM 900 and GSM 1900 networks … </description> <clock setting= &quot;nist&quot; alarm = &quot;yes&quot;/> </ product > < product category = &quot;mobile phone&quot;> <mfg>Ericsson</mfg><model>A3618</model> <description>...</description> </ product > </ catalog >
  • 13.
  • 15.
  • 16. { &quot;firstName&quot;: &quot;John&quot;, &quot;lastName&quot;: &quot;Smith&quot;, &quot;age&quot;: 25, &quot;address&quot;: { &quot;streetAddress&quot;: &quot;21 2nd Street&quot;, &quot;city&quot;: &quot;New York&quot;, &quot;state&quot;: &quot;NY&quot;, &quot;postalCode&quot;: &quot;10021&quot; }, &quot;phoneNumber&quot;: [ { &quot;type&quot;: &quot;home&quot;, &quot;number&quot;: &quot;212 555-1234&quot; }, { &quot;type&quot;: &quot;fax&quot;, &quot;number&quot;: &quot;646 555-4567&quot; } ] }
  • 17.
  • 18.
  • 19.
  • 20. Service Oriented Architecture Requestor Providers Registry FIND , UDDI BIND , SOAP/WSDL PUBLISH, UDDI
  • 21.
  • 22. SOA: Publishing (dynamic) Provider Registry Here is my service !
  • 23. SOA: Locating Service Requestor Registry Where is the service? Find it here !
  • 24. SOA: Binding Requestor Registry How can I access ? Here is how ! Provider What is the temperature today? 40 C
  • 25.
  • 26.
  • 27.
  • 28. SOAP: Layers SOAP-ENV:Envelope SOAP-ENV:Header SOAP-ENV:Body
  • 29. SOAP: Example POST /InStock HTTP/1.1 Host: www.example.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: 299 <?xml version=&quot;1.0&quot;?> < soap:Envelope xmlns:soap=&quot;http://www.w3.org/2003/05/soap-envelope&quot;> < soap:Header > </ soap:Header > < soap:Body > <m:GetStockPrice xmlns:m=&quot;http://www.example.org/stock&quot;> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </ soap:Body > </ soap:Envelope >
  • 30. Creating a SOAP message <student> <roll>120</roll> <firstName>Kiran</firstName> <lastName>Reddy</lastName> <grades> <english>A</english> <maths>B</maths> </grades> </student> <?xml version=&quot;1.0&quot;?> <soap:Envelope xmlns:soap=&quot;http://www.w3.org/2003/05/soap-envelope&quot;> <soap:Header> </soap:Header> <soap:Body> <student> <roll>120</roll> <firstName>Kiran</firstName> <lastName>Reddy</lastName> <grades> <english>A</english> <maths>B</maths> </grades> </student> </soap:Body> </soap:Envelope>
  • 31.
  • 32.
  • 33.
  • 35.
  • 36.
  • 37.
  • 38. HTTP: Request/Response Client Request GET /vnav/labs/PHP/HTTP.php HTTP/1.1 Host: loadaveragezero.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.14) Gecko/20110218 Firefox/3.6.14 (.NET CLR 3.5.30729) Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 ... Server Response HTTP/1.1 200 OK Server: Apache/1.3.41 (Unix) Content-type: application/xhtml+xml; charset=UTF-8 ...
  • 39.
  • 40.
  • 41. RESTful Application Cycle Resources are identified by URIs ↓ Clients communicate with resources via requests using astandard set of methods ↓ Requests and responses contain resource representations informats identified by media types ↓ Responses contain URIs that link to further resources
  • 42.
  • 43. Q & A Thank You!