SlideShare une entreprise Scribd logo
1  sur  20
WCF for the web developer Florin Cardașim, caf@rms.ro twitter: @cardasim, @CodeCampIasi RomSoft, www.rms.ro Iași, 8th of May 2010
Agenda WCF today: an overview WCF Services for the WEB 2.0 SOAP & REST WCF Data Services
WCF Today Programming Model SOAP Services WEB HTTP Services Data Services RIA Services Workflow Services Service Model Data Contract Service Contract Service  Behavior Channel Model Formats (XML, JSON, Atom…) Transports (HTTP, TCP, IPC, MSMQ…) Protocols (SOAP, HTTP, Open Data Protocol,…)
WCF Architecture - Channels WCF  Service WCF  Client Channel A  Channel A  Channel B  Channel B  Channel C  Channel C  Transport Channel  Transport Channel  HTTP, TCP, MSMQ, etc.
WCF Architecture - Bindings WCF Service [ServiceContract] interface IExampleB { . . .} [ServiceContract] interface IExampleA { . . .} Binding 3 Binding 1 Binding 2 Transactions Transactions RM Security Security Transport HTTP Transport HTTP Transport TCP
Demo: WCF Services for the WEB 2.0
What is SOAP SOAP = Simple(?!!) ObjectAccessProtocol =protocol, =standards advanced features: security, reliable messaging, transactions transport neutrality (http, tcp, ipc, msmq …) uses POST when used over HTTP roots in enterprise applications
SOAP-HTTP bindings wsHttpBinding SOAP 1.2 Transaction Flow Reliable Session basicHttpBinding SOAP 1.1 Symmetric Security HTTP Transport (Text Message Encoding) HTTP Transport (Text Message Encoding)
SOAP & WS-* MEX Policy WSDL SEC:  Kerberos, Username, X.509, SAML Secure Conversation, Federation, Trust RM: Reliability, Reliable Messaging TRAN: BussinessAct, Atomic, Coordination Messaging: SOAP, Addressing, MTOM, Transfer, Discovery… XML: XML, XSD, Digital Signature, Encryption Transport: HTTP/S, TCP, SMTP, UDP…
A SOAP request WCF  Client WCF  Service POST /AccountAccess/Accounts.svc Host: www.quickbank.com SOAPAction: GetBalance … <soap:Envelopexmlns:soap= …   <soap:Body>     <GetBalancexmlns= …       <Account>2</Account>     </GetBalance>   </soap:Body> </soap:Envelope> Account 1 Account 2 Account 3
What is REST REST = REpresentationalState Transfer ! protocol, ! format, ! standard = architectural style everything is a resource: Account, Balance … address: www.quickbank.com/Accounts/2 uniform interface: HTTP GET, POST, PUT, DELETE roots in WEB facing services (for example Google Search)
A REST request WCF  Client WCF  Service GET www.quickbank.com/Accounts/2 Account 1 Account 2 Account 3
Demo: Twitter REST Service Formats: XML, JSON RSS, ATOM webHttpBinding HTTP Transport (Web Message Encoding)
SOAP & REST
When to SOAP? When to REST? Exposing data OR operations? Need for WS-*? Who will be using your service? What are you/your developers comfortable with? REST seems to be preferred in the clouds:  Amazon S3 Windows Azure Google …
OData: WCF Data Services Open Data Protocol REST-based protocol for CRUD-style operations Based on AtomPub Formats: Atom, Xml, JSON DEMO
OData: Existing clients and servers Clients Browser .NET 3.5, 4.0 Java Script Java Restlet 2.0 PHP ASP.NET AJAX Excel 2010 Power Pivot LINQPad ,[object Object]
SQL Azure
SharePoint 2010
SQL Reporting Services

Contenu connexe

Similaire à WCF from the web developer

Intro to web services
Intro to web servicesIntro to web services
Intro to web servicesNeil Ghosh
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web ArchitectureChamnap Chhorn
 
AK 3 web services using apache axis
AK 3   web services using apache axisAK 3   web services using apache axis
AK 3 web services using apache axisgauravashq
 
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...Exchange of data over internet using web service(e.g., soap and rest) in SAS ...
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...Kevin Lee
 
DEV301- Web Service Programming with WCF 3.5
DEV301- Web Service Programming with WCF 3.5DEV301- Web Service Programming with WCF 3.5
DEV301- Web Service Programming with WCF 3.5Eyal Vardi
 
REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5Rob Windsor
 
jkljklj
jkljkljjkljklj
jkljkljhoefo
 
Internet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMInternet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMWoody Pewitt
 
REST - A Super Quick Intro
REST - A Super Quick IntroREST - A Super Quick Intro
REST - A Super Quick IntroSascha Wenninger
 
Cics Web 2.0 With Atom Feeds And Php
Cics Web 2.0 With Atom Feeds And PhpCics Web 2.0 With Atom Feeds And Php
Cics Web 2.0 With Atom Feeds And PhpCICS ROADSHOW
 
HTML5 WebSocket: The New Network Stack for the Web
HTML5 WebSocket: The New Network Stack for the WebHTML5 WebSocket: The New Network Stack for the Web
HTML5 WebSocket: The New Network Stack for the WebPeter Lubbers
 
Web services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGigWeb services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGigMandakini Kumari
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonAdnan Masood
 
Dusit Presentation V01
Dusit Presentation V01Dusit Presentation V01
Dusit Presentation V01Patchara
 

Similaire à WCF from the web developer (20)

Intro to web services
Intro to web servicesIntro to web services
Intro to web services
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 
AK 3 web services using apache axis
AK 3   web services using apache axisAK 3   web services using apache axis
AK 3 web services using apache axis
 
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...Exchange of data over internet using web service(e.g., soap and rest) in SAS ...
Exchange of data over internet using web service(e.g., soap and rest) in SAS ...
 
DEV301- Web Service Programming with WCF 3.5
DEV301- Web Service Programming with WCF 3.5DEV301- Web Service Programming with WCF 3.5
DEV301- Web Service Programming with WCF 3.5
 
REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5REST, JSON and RSS with WCF 3.5
REST, JSON and RSS with WCF 3.5
 
Developing With Data Technologies
Developing With Data TechnologiesDeveloping With Data Technologies
Developing With Data Technologies
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
 
jkljklj
jkljkljjkljklj
jkljklj
 
Internet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMInternet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAM
 
REST - A Super Quick Intro
REST - A Super Quick IntroREST - A Super Quick Intro
REST - A Super Quick Intro
 
Cics Web 2.0 With Atom Feeds And Php
Cics Web 2.0 With Atom Feeds And PhpCics Web 2.0 With Atom Feeds And Php
Cics Web 2.0 With Atom Feeds And Php
 
HTML5 WebSocket: The New Network Stack for the Web
HTML5 WebSocket: The New Network Stack for the WebHTML5 WebSocket: The New Network Stack for the Web
HTML5 WebSocket: The New Network Stack for the Web
 
Web services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGigWeb services soap and rest by mandakini for TechGig
Web services soap and rest by mandakini for TechGig
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural Comparison
 
Why do you need REST
Why do you need RESTWhy do you need REST
Why do you need REST
 
ASP.NET WEB API Training
ASP.NET WEB API TrainingASP.NET WEB API Training
ASP.NET WEB API Training
 
Dusit Presentation V01
Dusit Presentation V01Dusit Presentation V01
Dusit Presentation V01
 
Restful web services
Restful web servicesRestful web services
Restful web services
 

Plus de Florin Cardasim

Netug 18 dec2013-a bus ride to happiness
Netug 18 dec2013-a bus ride to happinessNetug 18 dec2013-a bus ride to happiness
Netug 18 dec2013-a bus ride to happinessFlorin Cardasim
 
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing Times
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing TimesTargul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing Times
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing TimesFlorin Cardasim
 
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-CardasimItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-CardasimFlorin Cardasim
 
Endava Career Days Jan 2012 Analysis and Architecture in Endava
Endava Career Days Jan 2012 Analysis and Architecture in EndavaEndava Career Days Jan 2012 Analysis and Architecture in Endava
Endava Career Days Jan 2012 Analysis and Architecture in EndavaFlorin Cardasim
 
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsCodecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsFlorin Cardasim
 
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and AzureITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and AzureFlorin Cardasim
 
Sql Server execution plans
Sql Server execution plansSql Server execution plans
Sql Server execution plansFlorin Cardasim
 

Plus de Florin Cardasim (10)

Netug 18 dec2013-a bus ride to happiness
Netug 18 dec2013-a bus ride to happinessNetug 18 dec2013-a bus ride to happiness
Netug 18 dec2013-a bus ride to happiness
 
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing Times
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing TimesTargul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing Times
Targul de Cariere Iasi 22 Oct 2013- We Are Living in Amazing Times
 
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-CardasimItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
 
Endava Career Days Jan 2012 Analysis and Architecture in Endava
Endava Career Days Jan 2012 Analysis and Architecture in EndavaEndava Career Days Jan 2012 Analysis and Architecture in Endava
Endava Career Days Jan 2012 Analysis and Architecture in Endava
 
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSocketsCodecamp Iasi-26 nov 2011 - Html 5 WebSockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
 
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and AzureITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
 
Sql Server execution plans
Sql Server execution plansSql Server execution plans
Sql Server execution plans
 
CLR threads
CLR threadsCLR threads
CLR threads
 
News In Wcf40
News In Wcf40News In Wcf40
News In Wcf40
 
News In The Net40
News In The Net40News In The Net40
News In The Net40
 

Dernier

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Dernier (20)

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

WCF from the web developer

  • 1. WCF for the web developer Florin Cardașim, caf@rms.ro twitter: @cardasim, @CodeCampIasi RomSoft, www.rms.ro Iași, 8th of May 2010
  • 2. Agenda WCF today: an overview WCF Services for the WEB 2.0 SOAP & REST WCF Data Services
  • 3. WCF Today Programming Model SOAP Services WEB HTTP Services Data Services RIA Services Workflow Services Service Model Data Contract Service Contract Service Behavior Channel Model Formats (XML, JSON, Atom…) Transports (HTTP, TCP, IPC, MSMQ…) Protocols (SOAP, HTTP, Open Data Protocol,…)
  • 4. WCF Architecture - Channels WCF Service WCF Client Channel A Channel A Channel B Channel B Channel C Channel C Transport Channel Transport Channel HTTP, TCP, MSMQ, etc.
  • 5. WCF Architecture - Bindings WCF Service [ServiceContract] interface IExampleB { . . .} [ServiceContract] interface IExampleA { . . .} Binding 3 Binding 1 Binding 2 Transactions Transactions RM Security Security Transport HTTP Transport HTTP Transport TCP
  • 6. Demo: WCF Services for the WEB 2.0
  • 7. What is SOAP SOAP = Simple(?!!) ObjectAccessProtocol =protocol, =standards advanced features: security, reliable messaging, transactions transport neutrality (http, tcp, ipc, msmq …) uses POST when used over HTTP roots in enterprise applications
  • 8. SOAP-HTTP bindings wsHttpBinding SOAP 1.2 Transaction Flow Reliable Session basicHttpBinding SOAP 1.1 Symmetric Security HTTP Transport (Text Message Encoding) HTTP Transport (Text Message Encoding)
  • 9. SOAP & WS-* MEX Policy WSDL SEC: Kerberos, Username, X.509, SAML Secure Conversation, Federation, Trust RM: Reliability, Reliable Messaging TRAN: BussinessAct, Atomic, Coordination Messaging: SOAP, Addressing, MTOM, Transfer, Discovery… XML: XML, XSD, Digital Signature, Encryption Transport: HTTP/S, TCP, SMTP, UDP…
  • 10. A SOAP request WCF Client WCF Service POST /AccountAccess/Accounts.svc Host: www.quickbank.com SOAPAction: GetBalance … <soap:Envelopexmlns:soap= … <soap:Body> <GetBalancexmlns= … <Account>2</Account> </GetBalance> </soap:Body> </soap:Envelope> Account 1 Account 2 Account 3
  • 11. What is REST REST = REpresentationalState Transfer ! protocol, ! format, ! standard = architectural style everything is a resource: Account, Balance … address: www.quickbank.com/Accounts/2 uniform interface: HTTP GET, POST, PUT, DELETE roots in WEB facing services (for example Google Search)
  • 12. A REST request WCF Client WCF Service GET www.quickbank.com/Accounts/2 Account 1 Account 2 Account 3
  • 13. Demo: Twitter REST Service Formats: XML, JSON RSS, ATOM webHttpBinding HTTP Transport (Web Message Encoding)
  • 15. When to SOAP? When to REST? Exposing data OR operations? Need for WS-*? Who will be using your service? What are you/your developers comfortable with? REST seems to be preferred in the clouds: Amazon S3 Windows Azure Google …
  • 16. OData: WCF Data Services Open Data Protocol REST-based protocol for CRUD-style operations Based on AtomPub Formats: Atom, Xml, JSON DEMO
  • 17.
  • 22.
  • 23. Please fill the evaluation formThank you very much! Florin Cardașim, caf@rms.ro twitter: @cardasim, @CodeCampIasi RomSoft, www.rms.ro Iași, 8th of May 2010
  • 24. Demo: REST in .NET 4.0 Caching Automatic format selection REST Starter Kit: Client API Paste as Xml

Notes de l'éditeur

  1. SOAP (basic-profile, ws-*)REST (xml, json, atom/rss)Why SOAP? Why REST?
  2. Core Services: SOAP over any transport channelOperation-centric servicesWS-* standardsWeb HTTP Services: REST over HTTPWEB Facing services over HTTPXml/JSON/ATOM/RSSWCF Data Services (ADO.Net Data Services)Exposing data over Open Data Protocol (REST interface)WCF RIA Services (.NET RIA Services)Building end-to-end Silverlight applicationWCF Workflow ServicesLong running, durable operations or where the specification and enforcement of operation sequencing is important
  3. Start with an example showing a service with the following endpoints:SOAP (basicHttp or wsHttp)REST POX (xml)REST JsonREST ATOMClients consuming these endpoints:?????What is SOAP? small demo, explain basic principlesWhat is REST? small demo, explain basic principlesMain differences between SOAP and RESThttp://www.devx.com/DevX/Article/8155 (beton!!!!)
  4. Start with an example showing a service with the following endpoints:SOAP (basicHttp or wsHttp)REST POX (xml)REST JsonREST ATOMClients consuming these endpoints:?????What is SOAP? small demo, explain basic principlesWhat is REST? small demo, explain basic principlesMain differences between SOAP and RESThttp://www.devx.com/DevX/Article/8155 (beton!!!!)
  5. Start with an example showing a service with the following endpoints:SOAP (basicHttp or wsHttp)REST POX (xml)REST JsonREST ATOMClients consuming these endpoints:?????What is SOAP? small demo, explain basic principlesWhat is REST? small demo, explain basic principlesMain differences between SOAP and RESThttp://www.devx.com/DevX/Article/8155 (beton!!!!)
  6. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0
  7. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0
  8. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0
  9. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0
  10. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0
  11. Demo:Simple REST service using wcf 4.0 (help page, etc – veziwcf 4.0)Simple ATOM feed service &amp;client using wcf 4.0