SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Web Services
 Chris McClelland
  DevDays, Belfast April 2009




      chris@ecliptic-design.com
About

Specialising in Mobile Strategy, Development,
Design and Usability.

New and rapidly developing company based in
Belfast, presently 4 people, but more to come!

Established Jan 2009.
Web Services?
WEB APP



                             “machine”
          API                 iPhone
                reques
                         t




                data
Why?
WEB APP




          API
                Outsource - community
                development

                Growth

                Novel Use of Data
Success Stories


            Google Maps
            Last.fm
            Ebay
            Facebook
            Twitter
iPhone Developers Why?


free content
large existing user-base
mashups
@stroughtonsmith
REST vs SOAP
SOAP
Simple Object Access Protocol




                       XML


                      SOAP


          XML to code and to decode data
               SOAP to transport it
REST
REpresentational State Transfer
stateless
just HTTP + URIs

        HTTP verbs:
        GET: Retrieves a resource
        POST: Sends data to create a resource
        PUT: Sends data to update a resource
        DELETE: Destroys a resource
SOAP
POST /InStock HTTP/1.1
Host: www.example.org
Content-Type: application/soap+xml; charset=utf-8
Content-Length: nnn

<?xml version=quot;1.0quot;?>
<soap:Envelope
xmlns:soap=quot;http://www.w3.org/2001/12/soap-envelopequot;
soap:encodingStyle=quot;http://www.w3.org/2001/12/soap-
encodingquot;>

<soap:Body xmlns:m=quot;http://www.example.org/stockquot;>
  <m:GetStockPrice>
    <m:StockName>IBM</m:StockName>
  </m:GetStockPrice>
</soap:Body>

</soap:Envelope>

                       XML (Extensible Markup Language)
REST



GET www.example.org/user/2
methods        URI
               POST       /user/create
                GET      /user/show/1
NOT RESTful
               POST      /user/update/1
              POST/GET   /user/delete/1
               POST          /user
                GET         /user/1
 RESTful
                PUT         /user/1
              DELETE        /user/1
SOAP
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: nnn

<?xml version=quot;1.0quot;?>
<soap:Envelope
xmlns:soap=quot;http://www.w3.org/2001/12/soap-envelopequot;
soap:encodingStyle=quot;http://www.w3.org/2001/12/soap-
encodingquot;>

<soap:Body xmlns:m=quot;http://www.example.org/stockquot;>
  <m:GetStockPriceResponse>
    <m:Price>34.5</m:Price>
  </m:GetStockPriceResponse>
</soap:Body>

</soap:Envelope>
REST
          http://api.flickr.com/services/rest/?
request   method=flickr.contacts.getList&api_key=XXX&api_sig=XXX



data      <contacts page=quot;1quot; pages=quot;1quot; perpage=quot;1000quot; total=quot;3quot;>
             <contact nsid=quot;12037949629@N01quot;
                username=quot;Ericquot; iconserver=quot;1quot;
                realname=quot;Eric Costelloquot;
                friend=quot;1quot; family=quot;0quot; ignored=quot;1quot; />
             <contact nsid=quot;12037949631@N01quot;
                username=quot;nebquot; iconserver=quot;1quot;
                realname=quot;Ben Cervenyquot;
                friend=quot;0quot; family=quot;0quot; ignored=quot;0quot; />
             <contact nsid=quot;41578656547@N01quot;
                username=quot;cal_abcquot; iconserver=quot;1quot;
                realname=quot;Cal Hendersonquot;
                friend=quot;1quot; family=quot;1quot; ignored=quot;0quot; />
          </contacts>
REST - data received
       XML
       JSON
       RSS, Atom
 RSS




       PDF
       Other e.g. PNG, Microformats
SOAP - benefits

WS-*
offers options for Privacy,
Transfer, Eventing, Addressing,
Notification, ReliableMessaging
Mature
Enterprise
REST Authentication
done via HTTPS

to avoid giving the application / developer your
username and password:



OAuth
“An open protocol to allow secure API
authorisation in a simple and standard method
from desktop and web applications.”
http://www.flickr.com/photos/factoryjoe/
http://www.flickr.com/photos/factoryjoe/
http://www.flickr.com/photos/factoryjoe/
REST - benefits
Simple
Popular, very Web 2.0
Better performance & scalability
Can be cached
Allows diverse formats e.g. JSON
Built into many web frameworks
Easier in Objective-C
iPhone Libraries
HTTP - ASIHTTPRequest
XML, Microformats, RSS, Atom -
NSXMLParser, libxml
JSON - json-framework
Rails - ObjectiveResource
SOAP - wsdl2objc
OAuth - MPOAuthConnection
RESTful APIs
All Yahoo: flickr
myspace, virb, facebook
delicious
Amazon Web Services, SimpleDB
vimeo, youtube
ebay
google
Thanks!


   @chrismcclelland
chris@ecliptic-design.com
www.ecliptic-design.com

Contenu connexe

Tendances

The Power of Open Data
The Power of Open DataThe Power of Open Data
The Power of Open DataPhil Windley
 
On site audit with screaming frog gdi
On site audit with screaming frog gdiOn site audit with screaming frog gdi
On site audit with screaming frog gdiGlen Dimaandal
 
Hreflang Tags - Brighton SEO April 2018 - Emily Mace
Hreflang Tags - Brighton SEO April 2018 - Emily MaceHreflang Tags - Brighton SEO April 2018 - Emily Mace
Hreflang Tags - Brighton SEO April 2018 - Emily MaceOban International
 
BrightonSEO 2017 - SEO quick wins from a technical check
BrightonSEO 2017  - SEO quick wins from a technical checkBrightonSEO 2017  - SEO quick wins from a technical check
BrightonSEO 2017 - SEO quick wins from a technical checkChloe Bodard
 
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stox
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick StoxPubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stox
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stoxpatrickstox
 
Redefining technical SEO & how we should be thinking about it as an industry ...
Redefining technical SEO & how we should be thinking about it as an industry ...Redefining technical SEO & how we should be thinking about it as an industry ...
Redefining technical SEO & how we should be thinking about it as an industry ...WeLoveSEO
 
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEO
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEOUK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEO
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEOErudite
 
Alexis max-Creating a bot experience as good as your user experience - Alexis...
Alexis max-Creating a bot experience as good as your user experience - Alexis...Alexis max-Creating a bot experience as good as your user experience - Alexis...
Alexis max-Creating a bot experience as good as your user experience - Alexis...WeLoveSEO
 
URLs and Domains (SMX East 2008)
URLs and Domains (SMX East 2008)URLs and Domains (SMX East 2008)
URLs and Domains (SMX East 2008)Nathan Buggia
 
SearchLove Boston 2018 - Bartosz Goralewicz - JavaScript: Looking Past the ...
SearchLove Boston 2018 -  Bartosz Goralewicz -  JavaScript: Looking Past the ...SearchLove Boston 2018 -  Bartosz Goralewicz -  JavaScript: Looking Past the ...
SearchLove Boston 2018 - Bartosz Goralewicz - JavaScript: Looking Past the ...Distilled
 
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stox
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick StoxSMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stox
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stoxpatrickstox
 
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More.
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More. #CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More.
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More. Mel Sciorra
 
Duplicate Content Myths Types and Ways To Make It Work For You
Duplicate Content Myths Types and Ways To Make It Work For YouDuplicate Content Myths Types and Ways To Make It Work For You
Duplicate Content Myths Types and Ways To Make It Work For YouDawn Anderson MSc DigM
 
Brighton SEO - Site Speed for Content Marketers
Brighton SEO - Site Speed for Content MarketersBrighton SEO - Site Speed for Content Marketers
Brighton SEO - Site Speed for Content MarketersTom Bennet
 
Administrators admin tips tricks and hacks presented by an ex-googler
Administrators admin tips tricks and hacks presented by an ex-googlerAdministrators admin tips tricks and hacks presented by an ex-googler
Administrators admin tips tricks and hacks presented by an ex-googlerzpurcey
 
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The Spurious
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The SpuriousTom Capper Mozcon 2021 - Core Web Vitals - The Fast & The Spurious
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The SpuriousTom Capper
 
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...We Are Marketing
 
What is Seo,smo,smm in digital marketing
What is Seo,smo,smm in digital marketingWhat is Seo,smo,smm in digital marketing
What is Seo,smo,smm in digital marketingTanuja Talekar
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scaleGiacomo Zecchini
 

Tendances (20)

The Power of Open Data
The Power of Open DataThe Power of Open Data
The Power of Open Data
 
On site audit with screaming frog gdi
On site audit with screaming frog gdiOn site audit with screaming frog gdi
On site audit with screaming frog gdi
 
Hreflang Tags - Brighton SEO April 2018 - Emily Mace
Hreflang Tags - Brighton SEO April 2018 - Emily MaceHreflang Tags - Brighton SEO April 2018 - Emily Mace
Hreflang Tags - Brighton SEO April 2018 - Emily Mace
 
BrightonSEO 2017 - SEO quick wins from a technical check
BrightonSEO 2017  - SEO quick wins from a technical checkBrightonSEO 2017  - SEO quick wins from a technical check
BrightonSEO 2017 - SEO quick wins from a technical check
 
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stox
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick StoxPubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stox
Pubcon Vegas 2017 You're Going To Screw Up International SEO - Patrick Stox
 
Redefining technical SEO & how we should be thinking about it as an industry ...
Redefining technical SEO & how we should be thinking about it as an industry ...Redefining technical SEO & how we should be thinking about it as an industry ...
Redefining technical SEO & how we should be thinking about it as an industry ...
 
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEO
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEOUK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEO
UK Top 5,000 Websites; Mobile Site Speed Benchmark - BrightonSEO
 
Alexis max-Creating a bot experience as good as your user experience - Alexis...
Alexis max-Creating a bot experience as good as your user experience - Alexis...Alexis max-Creating a bot experience as good as your user experience - Alexis...
Alexis max-Creating a bot experience as good as your user experience - Alexis...
 
URLs and Domains (SMX East 2008)
URLs and Domains (SMX East 2008)URLs and Domains (SMX East 2008)
URLs and Domains (SMX East 2008)
 
SearchLove Boston 2018 - Bartosz Goralewicz - JavaScript: Looking Past the ...
SearchLove Boston 2018 -  Bartosz Goralewicz -  JavaScript: Looking Past the ...SearchLove Boston 2018 -  Bartosz Goralewicz -  JavaScript: Looking Past the ...
SearchLove Boston 2018 - Bartosz Goralewicz - JavaScript: Looking Past the ...
 
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stox
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick StoxSMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stox
SMX Advanced 2018 SEO for Javascript Frameworks by Patrick Stox
 
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More.
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More. #CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More.
#CMC2019: Advanced SEO: Competitive intelligence, Web Scraping, and More.
 
Duplicate Content Myths Types and Ways To Make It Work For You
Duplicate Content Myths Types and Ways To Make It Work For YouDuplicate Content Myths Types and Ways To Make It Work For You
Duplicate Content Myths Types and Ways To Make It Work For You
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
 
Brighton SEO - Site Speed for Content Marketers
Brighton SEO - Site Speed for Content MarketersBrighton SEO - Site Speed for Content Marketers
Brighton SEO - Site Speed for Content Marketers
 
Administrators admin tips tricks and hacks presented by an ex-googler
Administrators admin tips tricks and hacks presented by an ex-googlerAdministrators admin tips tricks and hacks presented by an ex-googler
Administrators admin tips tricks and hacks presented by an ex-googler
 
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The Spurious
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The SpuriousTom Capper Mozcon 2021 - Core Web Vitals - The Fast & The Spurious
Tom Capper Mozcon 2021 - Core Web Vitals - The Fast & The Spurious
 
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...
Nine Things we're Checking for a Mobile First Index by Nichola Stott in The I...
 
What is Seo,smo,smm in digital marketing
What is Seo,smo,smm in digital marketingWhat is Seo,smo,smm in digital marketing
What is Seo,smo,smm in digital marketing
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scale
 

En vedette

Grade Sheet 2 3 Visual Dict Bolster
Grade Sheet 2 3 Visual Dict BolsterGrade Sheet 2 3 Visual Dict Bolster
Grade Sheet 2 3 Visual Dict BolsterBarbara Holler
 
2009 - 2010 MacJannet Prize Winners
2009 - 2010 MacJannet Prize Winners2009 - 2010 MacJannet Prize Winners
2009 - 2010 MacJannet Prize WinnersCook Media
 
Tony Cook Remarks MacJannet Prize Ceremony 2011
Tony Cook Remarks MacJannet Prize Ceremony 2011Tony Cook Remarks MacJannet Prize Ceremony 2011
Tony Cook Remarks MacJannet Prize Ceremony 2011Cook Media
 
2011 MacJannet Prize Winners
2011 MacJannet Prize Winners 2011 MacJannet Prize Winners
2011 MacJannet Prize Winners Cook Media
 
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)Juan Miranda
 
The REALTOR® Foundation Ambassador presentation
The REALTOR® Foundation Ambassador presentationThe REALTOR® Foundation Ambassador presentation
The REALTOR® Foundation Ambassador presentationcrystalligda
 

En vedette (6)

Grade Sheet 2 3 Visual Dict Bolster
Grade Sheet 2 3 Visual Dict BolsterGrade Sheet 2 3 Visual Dict Bolster
Grade Sheet 2 3 Visual Dict Bolster
 
2009 - 2010 MacJannet Prize Winners
2009 - 2010 MacJannet Prize Winners2009 - 2010 MacJannet Prize Winners
2009 - 2010 MacJannet Prize Winners
 
Tony Cook Remarks MacJannet Prize Ceremony 2011
Tony Cook Remarks MacJannet Prize Ceremony 2011Tony Cook Remarks MacJannet Prize Ceremony 2011
Tony Cook Remarks MacJannet Prize Ceremony 2011
 
2011 MacJannet Prize Winners
2011 MacJannet Prize Winners 2011 MacJannet Prize Winners
2011 MacJannet Prize Winners
 
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)
DIDÁCTICA CRITICA (SITUACIÓN DE APRENDIZAJE)
 
The REALTOR® Foundation Ambassador presentation
The REALTOR® Foundation Ambassador presentationThe REALTOR® Foundation Ambassador presentation
The REALTOR® Foundation Ambassador presentation
 

Similaire à Web Services, for DevDays Belfast

The Evolving Security Environment For Web Services
The Evolving Security Environment For Web ServicesThe Evolving Security Environment For Web Services
The Evolving Security Environment For Web ServicesQanita Ahmad
 
The Semantic Web An Introduction
The Semantic Web An IntroductionThe Semantic Web An Introduction
The Semantic Web An Introductionshaouy
 
Build APIs With Kapow Mashup Server
Build APIs With Kapow Mashup ServerBuild APIs With Kapow Mashup Server
Build APIs With Kapow Mashup ServerAndreas Krohn
 
Internet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMInternet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMWoody Pewitt
 
Architecting Web Services
Architecting Web ServicesArchitecting Web Services
Architecting Web ServicesLorna Mitchell
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructurePamela Fox
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructureguest517f2f
 
Creating an Effective Mobile API
Creating an Effective Mobile API Creating an Effective Mobile API
Creating an Effective Mobile API Nick DeNardis
 
What is API - Understanding API Simplified
What is API - Understanding API SimplifiedWhat is API - Understanding API Simplified
What is API - Understanding API SimplifiedJubin Aghara
 
ReST-ful Resource Management
ReST-ful Resource ManagementReST-ful Resource Management
ReST-ful Resource ManagementJoe Davis
 
What's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkWhat's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkSam Basu
 
Creating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsCreating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsRicardo Varela
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access ProtocolSaatviga Sudhahar
 

Similaire à Web Services, for DevDays Belfast (20)

Web services - REST and SOAP
Web services - REST and SOAPWeb services - REST and SOAP
Web services - REST and SOAP
 
The Evolving Security Environment For Web Services
The Evolving Security Environment For Web ServicesThe Evolving Security Environment For Web Services
The Evolving Security Environment For Web Services
 
The Semantic Web An Introduction
The Semantic Web An IntroductionThe Semantic Web An Introduction
The Semantic Web An Introduction
 
CSG 2012
CSG 2012CSG 2012
CSG 2012
 
Build APIs With Kapow Mashup Server
Build APIs With Kapow Mashup ServerBuild APIs With Kapow Mashup Server
Build APIs With Kapow Mashup Server
 
Putting SOAP to REST
Putting SOAP to RESTPutting SOAP to REST
Putting SOAP to REST
 
Internet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAMInternet protocalls & WCF/DReAM
Internet protocalls & WCF/DReAM
 
Architecting Web Services
Architecting Web ServicesArchitecting Web Services
Architecting Web Services
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
 
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google InfrastructureLiving in the Cloud: Hosting Data & Apps Using the Google Infrastructure
Living in the Cloud: Hosting Data & Apps Using the Google Infrastructure
 
soap
soapsoap
soap
 
JSON and REST
JSON and RESTJSON and REST
JSON and REST
 
WebServices introduction
WebServices introductionWebServices introduction
WebServices introduction
 
Creating an Effective Mobile API
Creating an Effective Mobile API Creating an Effective Mobile API
Creating an Effective Mobile API
 
What is API - Understanding API Simplified
What is API - Understanding API SimplifiedWhat is API - Understanding API Simplified
What is API - Understanding API Simplified
 
ReST-ful Resource Management
ReST-ful Resource ManagementReST-ful Resource Management
ReST-ful Resource Management
 
Develop webservice in PHP
Develop webservice in PHPDevelop webservice in PHP
Develop webservice in PHP
 
What's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon TalkWhat's New with Windows Phone - FoxCon Talk
What's New with Windows Phone - FoxCon Talk
 
Creating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsCreating Yahoo Mobile Widgets
Creating Yahoo Mobile Widgets
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access Protocol
 

Dernier

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 2024The Digital Insurer
 
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?Antenna Manufacturer Coco
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
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...Enterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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 MenDelhi Call girls
 
[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.pdfhans926745
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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 Processorsdebabhi2
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Dernier (20)

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
 
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?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
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...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
[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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Web Services, for DevDays Belfast

  • 1. Web Services Chris McClelland DevDays, Belfast April 2009 chris@ecliptic-design.com
  • 2. About Specialising in Mobile Strategy, Development, Design and Usability. New and rapidly developing company based in Belfast, presently 4 people, but more to come! Established Jan 2009.
  • 3. Web Services? WEB APP “machine” API iPhone reques t data
  • 4. Why? WEB APP API Outsource - community development Growth Novel Use of Data
  • 5. Success Stories Google Maps Last.fm Ebay Facebook Twitter
  • 6. iPhone Developers Why? free content large existing user-base mashups
  • 9. SOAP Simple Object Access Protocol XML SOAP XML to code and to decode data SOAP to transport it
  • 10. REST REpresentational State Transfer stateless just HTTP + URIs HTTP verbs: GET: Retrieves a resource POST: Sends data to create a resource PUT: Sends data to update a resource DELETE: Destroys a resource
  • 11. SOAP POST /InStock HTTP/1.1 Host: www.example.org Content-Type: application/soap+xml; charset=utf-8 Content-Length: nnn <?xml version=quot;1.0quot;?> <soap:Envelope xmlns:soap=quot;http://www.w3.org/2001/12/soap-envelopequot; soap:encodingStyle=quot;http://www.w3.org/2001/12/soap- encodingquot;> <soap:Body xmlns:m=quot;http://www.example.org/stockquot;> <m:GetStockPrice> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </soap:Body> </soap:Envelope> XML (Extensible Markup Language)
  • 13. methods URI POST /user/create GET /user/show/1 NOT RESTful POST /user/update/1 POST/GET /user/delete/1 POST /user GET /user/1 RESTful PUT /user/1 DELETE /user/1
  • 14. SOAP HTTP/1.1 200 OK Content-Type: application/soap+xml; charset=utf-8 Content-Length: nnn <?xml version=quot;1.0quot;?> <soap:Envelope xmlns:soap=quot;http://www.w3.org/2001/12/soap-envelopequot; soap:encodingStyle=quot;http://www.w3.org/2001/12/soap- encodingquot;> <soap:Body xmlns:m=quot;http://www.example.org/stockquot;> <m:GetStockPriceResponse> <m:Price>34.5</m:Price> </m:GetStockPriceResponse> </soap:Body> </soap:Envelope>
  • 15. REST http://api.flickr.com/services/rest/? request method=flickr.contacts.getList&api_key=XXX&api_sig=XXX data <contacts page=quot;1quot; pages=quot;1quot; perpage=quot;1000quot; total=quot;3quot;> <contact nsid=quot;12037949629@N01quot; username=quot;Ericquot; iconserver=quot;1quot; realname=quot;Eric Costelloquot; friend=quot;1quot; family=quot;0quot; ignored=quot;1quot; /> <contact nsid=quot;12037949631@N01quot; username=quot;nebquot; iconserver=quot;1quot; realname=quot;Ben Cervenyquot; friend=quot;0quot; family=quot;0quot; ignored=quot;0quot; /> <contact nsid=quot;41578656547@N01quot; username=quot;cal_abcquot; iconserver=quot;1quot; realname=quot;Cal Hendersonquot; friend=quot;1quot; family=quot;1quot; ignored=quot;0quot; /> </contacts>
  • 16. REST - data received XML JSON RSS, Atom RSS PDF Other e.g. PNG, Microformats
  • 17. SOAP - benefits WS-* offers options for Privacy, Transfer, Eventing, Addressing, Notification, ReliableMessaging Mature Enterprise
  • 18. REST Authentication done via HTTPS to avoid giving the application / developer your username and password: OAuth “An open protocol to allow secure API authorisation in a simple and standard method from desktop and web applications.”
  • 22. REST - benefits Simple Popular, very Web 2.0 Better performance & scalability Can be cached Allows diverse formats e.g. JSON Built into many web frameworks Easier in Objective-C
  • 23. iPhone Libraries HTTP - ASIHTTPRequest XML, Microformats, RSS, Atom - NSXMLParser, libxml JSON - json-framework Rails - ObjectiveResource SOAP - wsdl2objc OAuth - MPOAuthConnection
  • 24. RESTful APIs All Yahoo: flickr myspace, virb, facebook delicious Amazon Web Services, SimpleDB vimeo, youtube ebay google
  • 25. Thanks! @chrismcclelland chris@ecliptic-design.com www.ecliptic-design.com