+ All Categories
Home > Technology > Servicii Web prin REST

Servicii Web prin REST

Date post: 30-May-2015
Category:
Upload: sabin-buraga
View: 3,881 times
Download: 0 times
Share this document with a friend
Description:
O prezentare despre dezvoltarea de servicii Web prin REST, cu referire si la aplicatii hibride (mash-ups).
90
infoeducatie 2009 :: servicii web prin rest Dr. SabinCorneliu Buraga – www.purl.org/net/busaco
Transcript
Page 1: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 2: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Computer Science

arte

Web interacțiune

design

pictură

profesor

muzică

facultate

semantic

literatură

A. I. Cuza

fotografie

programare

conferințe

cărțicursuri

RomâniaXML

@busaco

cercetare

pasiune

Page 3: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 4: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

oferirea unui spațiu de comunicare inter‐umană 

partajarea cunoștințelor

Page 5: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

exploatarea puterii computaționale

Page 6: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

resursele sunt identificate prin adresa lor 

identificator uniform de resurseURI – Uniform Resource Identifier

http://infoeducatie.ro/2009/participanti/tux

Page 7: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

accesul la conținutul – reprezentarea – resurselor Webse realizează printr‐un protocol

HTTP – HyperText Transfer Protocol

Page 8: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

resursele – documentele – includ <marcaje />

paginiWeb

Page 9: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

marcajele conțin la rândul lor URI‐uri hipertext

Page 10: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 11: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

soluții multi‐platformă, slab‐conectate

integrarea facilă la nivel de Weba aplicațiilor, serviciilor & sistemelor

Page 12: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

necesitatea recurgerii la standarde

Page 13: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

soluții multi‐platformă, slab‐conectate

datele să poată fi descrise pentru a fi “înțelese”de calculatoare și pentru a fi interconectate ușor

Page 14: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

servicii atașabile (pluggable) & versatile

SaaS – Software as a Service

ASP – Application Service Provider

Page 15: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 16: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

există un model arhitectural de dezvoltarea serviciilor la nivel de web?

Page 17: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

divizarea aplicațiilor în servicii – independente –care se pot compune,

menite a se conecta & orchestra în mod spontanîn cadrul proceselor de afaceri/tehnice

web component‐based software

Page 18: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

“the web is the computer”

disponibilitatea unei/unor arhitecturi care…

oferă suport pentru paradigme de comunicare bazată pe Web între aplicații eterogene

Page 19: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

“the web is the computer”

disponibilitatea unei/unor arhitecturi care…

permit(e) localizarea transparentă a serviciilor

Page 20: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

“the web is the computer”

disponibilitatea unei/unor arhitecturi care…

facilitează adăugarea, înlocuirea, eliminareaserviciilor în mod dinamic

Page 21: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

“the web is the computer”

disponibilitatea unei/unor arhitecturi care…

ascund(e) dezvoltatorului detaliile de sistem

Page 22: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 23: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

software oferind o funcționalitate specifică

spelling checkingstocare de date

mesagerie instantaneeagregare de știricurs valutar

realizare de statistici…

Page 24: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

utilizate – la distanță – de alte aplicații/servicii

Page 25: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

accesate standardizat via Web

URIHTTPXML

Page 26: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

serviciul unei agenții de turismoferirea – și vânzarea, eventual – a unor formule 

de petrecere a vacanței

Page 27: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

serviciul unei agenții de turism

utilizează alte servicii (software) disponibile pe Web: tranzacții financiareservicii hoteliere

servicii de transport

Page 28: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum am implementa un serviciu?

script‐uri CGI sau utilizarea serverelor de aplicații Web

ASP.NET, JSP, PHP, RoR,…

Page 29: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

maniera clasică de interacțiune cu utilizatorul

utilizatorul – nu neapărat uman ☺ – vizitează o pagină și formulează o cerere (e.g., via un formular)

Page 30: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

maniera clasică de interacțiune cu utilizatorul

serviciul implementat oferă un răspunsuzual, un document (X)HTML

Page 31: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

tradițional, aplicația oferă o interfață‐utilizator disponibilă pe web

cererile sunt capt(ur)ate via formulare + legături hipertext

utilizatorii umani trebuie să interpreteze etichetele și câmpurile de dialog + răspunsul recepționat

Page 32: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum obținem răspunsul pentru a fi (re)folositîn programele noastre?

procesarea datelor din codul HTML web scrapping

<tr><td>valoare</td><td><input name="val" value="0" readonly type="text"></td></tr><tr><td>total (cu TVA)</td><td><input name="cutva" value="0" readonly type="text"></td></tr>

Page 33: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum obținem răspunsul pentru a fi (re)folositîn programele noastre?

orice modificare în marcaje rescrierea programului de preluare a datelor din documentul HTML

???!

Page 34: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum are loc schimbul de date între servicii webși alte aplicații?

Page 35: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

ce‐ar fi să indicăm datele de intrare și răspunsul oferit de serviciul webîntr‐un format standardizat?

Page 36: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

posibile soluții:

XML‐RPCSOAP

POX (Plain Old XML)

JSON (JavaScript Object Notation)

“dialog” prin XML

Page 37: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

REpresenta‐tional State Transfer

Page 38: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

stil arhitectural de dezvoltare a aplicațiilor Webcu focalizare asupra reprezentării datelor

Roy Fielding, 2000

Page 39: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

rezultatul unei procesări conduce la returnarea unei reprezentări de resursă

Page 40: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

rezultatul unei procesări conduce la returnarea unei reprezentări de resursă

resursăWeb = blog‐ul unei persoane, fotografia unui utilizator, flux de știri, program etc.

Page 41: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

rezultatul unei procesări conduce la returnarea unei reprezentări de resursă

reprezentare = (X)HTML, JPEG, PNG, RSS, Atom, SVG,…

desemnată de tipuri MIMEtext/html, image/png, application/xhtml+xml etc.

Page 42: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

rezultatul unei procesări conduce la returnarea unei reprezentări de resursă

reprezentările aceleași resurse – desemnate de un URI unic – pot fi multiple

reprezentare1(XHTML)

reprezentare2(Atom)

resursa

URI

Page 43: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

rezultatul unei procesări conduce la returnarea unei reprezentări de resursă

fiecare reprezentare a unei resurse are asociat un URL

reprezentare1(XHTML)

reprezentare2(Atom)

resursa

URI

URLURL

Page 44: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

clienții – e.g., navigatoare Web, roboti, player‐e –interacționează cu reprezentările resurselor via verbe(“accesează”: GET, “modifică”: POST, “șterge”: DELETE,…)

reprezentare1(XHTML)

reprezentare2(Atom)

resursa

URI

URLURLGET POST GET DELETE

Page 45: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

orice accesare a unei reprezentări plasează aplicația – ori clientul Web – într‐o stare

care va fi schimbată în urma unui transferde date (accesarea altei reprezentări)

Page 46: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

resursa1

reprezentare1(XHTML)

http://blog.info/

resursa2

reprezentare2(XHTML)

http://blog.info/mesaj

resursa3

reprezentare3(XHTML)

http://blog.info/mesaj/edit

resursa4

reprezentare4(Atom)

http://blog.info/stiri

GET POST

GET

Page 47: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

transferul se realizează prin protocolul HTTP

reprezentarea este modelată în XMLși indicată prin tipuri MIME

adresabilitatea se rezolvă via URI

Page 48: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

aplicațiile ce invocă funcționalități (servicii)vor consuma reprezentări de resurse – în stilul pull

Page 49: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

fiecare cerere este considerată independentă,fără a se lua în considerație contextul – stateless

Page 50: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

implementarea unui magazin on‐line oferind dulciuri

tipuri de resurse (Sortim & Utiliz), identificate unic de URIhttp://www.dulciuri.biz/sortim/rahat

URI intuitivașa‐zis user/SEO friendly

Page 51: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

serviciile oferite de Flickr.com

acces – folosind HTTP (e.g., GET, POST) – via URI‐ulhttp://api.flickr.com/services/rest/

pentru a invoca un serviciu Flickr, se precizează metoda + parametrii (dacă există)

http://api.flickr.com/services/rest/?method=flickr.photos.getInfo&...

se înlocuiește cu funcționalitatea dorită

Page 52: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

serviciile oferite de Del.icio.us

managementul adreselor Web favorite (bookmark‐uri)

listarea bookmark‐urilor(eventual, filtrate/grupate după diverse criterii)

managementul bookmark‐urilor:adăugare, editare, ștergere

Page 53: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

interfața web cu utilizatorul

Page 54: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Resursa URL Metoda Reprezentarebookmark /bookmarks/{md5} GET application/bookmark+xmlbookmark /bookmarks/{md5} PUT application/bookmark+xmlbokmark /bookmarks/{md5} DELETElistă de bookmark‐uri /bookmarks GET application/atom+xml

listă de utilizatori /users GET application/atom+xmllistă de tag‐uri (termeni de  conținut)

/tags GET application/atom+xml

pagina principală / GET application/delicious+xml

Page 55: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

GET /bookmarks200 OKContent-type: application/atom+xml

<?xml version="1.0"?><feed xmlns="http://www.w3.org/2005/Atom"><title>Bookmarks</title><entry><title>O resursa interesanta</title><link href="/bookmarks/a211528fb5108cddaa4b0d3aeccdbdcf"/><summary>http://undeva.info/o-resursa-interesanta</summary></entry><!-- eventual, alte elemente <entry>… --></feed>

obținerea bookmark‐urilor:răspuns XML (Atom) dat de 

Del.icio.us

digest MD5

Page 56: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

GET /bookmarks/a211528fb5108cddaa4b0d3aeccdbdcf 200 OKContent-type: application/bookmark+xml

<bookmark><title>O resursa interesanta</title><url>http://undeva.info/o-resursa-interesanta</url><user href="/users/tux">tux</user><tags><tag href="/tags/interesting">interesting</tag><tag href="/tags/penguin">penguin</tag>

</tags></bookmark>preluarea unui bookmark: răspuns XML dat de serviciul Del.icio.us

Page 57: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum accesăm reprezentări de resurse webprin REST?

Page 58: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

biblioteci/API‐uri implementând HTTP

libcURL (C, cu portări pentru Perl, PHP, Ruby, Tcl,…)libwww (C, Perl)httplib (Python)Net:HTTP (Ruby)

etc.

Page 59: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

exemplu: trimiterea unui mesaj la Twitter.comcurl --basic --user utilizator:parola --data status="rest!"

http://twitter.com/statuses/update.xml

<status> <created_at>Wed Jul 29 15:25:05 +0000 2009</created_at> <text>rest!</text> <truncated>false</truncated> <user>

<name>Sabin Buraga</name><description>A computer scientist, an artist, and more!</description>

…</status>

Page 60: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

biblioteci/API‐uri implementând HTTP

permit dezvoltarea de aplicații desktop, mobile etc.

suport pentru implementarea de mash‐up‐uri pe server

nu funcționează în navigatorul web

Page 61: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

navigatoarele Web actuale

nu necesită o interfață de programare specifică 

disponibilitate ubicuă

transferuri asincrone via AJAX – direct în JavaScript

pot apărea incompatibilități

Page 62: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

ASP.NET MVC (C#)JAX‐RS – Java Architecture for RESTful web Services

Jifty (Perl)Recess (PHP)

Ruby on Rails (Ruby)Symfony (PHP)Tonic (PHP)

etc.

Page 63: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

servicii publice ce pot fi consumate prin REST (exemple): Amazon, Blip.tv, eBay, Facebook, Google, Hi5, Last.fm, 

SlideShare, Talis, TripIt, Upcoming, Yahoo!, YouTube etc.

API‐uri specificedisponibile liber pentru Flex (ActionScript), PHP, Python,

Objective‐C, Ruby,…

Page 64: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum combindate oferitede mai multe servicii web?

Page 65: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

combinarea – la nivel de client și/sau server –a conținutului ce provine din surse (situri)

multiple, oferind o funcționalitate/experiență nouă

Page 66: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

+ Ma(y)shupTVo aplicație hibridă

Page 67: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

se bazează pe fluxuri RSS/Atom, servicii web, API‐uri,…

Page 68: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

aliniate “curentului” SaaS(Software As A Service)

Page 69: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

caracteristici:combinarevizualizareagregare

Page 70: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

combinare

utilizarea de surse de date multiple

poate avea caracter multidimensional: subiect de interes + locație geografică + moment de timp

Yahoo! music search + Google maps + Eventful

Page 71: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 72: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

vizualizare

pot fi adoptate diverse tehnici de vizualizare (prezentare)a datelor:

cartografică,tag cloud‐uri,

tridimensională,…

Page 73: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Twitter + Google Earth TwittEarth

Page 74: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

agregare

gruparea datelor provenite din mai multe surseși analizarea lor: statistici, clasificări, predicții,…

prin data mining se pot releva aspecte “ascunse”ale datelor procesate

Page 75: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

recomandare inteligentă de resurse via Zemanta

Page 76: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platforme

Page 77: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platforme

RSS, geoRSS, microformate, 

RDFa,…

Page 78: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platforme

privindfluxurileRSS/Atom

specificeserviciilorpublice

Page 79: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platforme

framework‐uriweb

oferite de organizații

Page 80: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platformeAdobe AIR, 

Boxely, SnapLogic, widget‐uri

Page 81: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

instrumente(GUI tools)

biblioteci de dezvoltare(libraries)

interfețe de programare(API‐uri)

surse de date (data feeds)

platforme

Dappr, Facebook, Google App Engine, 

Yahoo! Pipes

Page 82: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 83: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

“codul‐sursă” al pipe‐ului web

Page 84: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

cum aflu care sunt mash‐up‐urile existenteși API‐urile aferente?

Page 85: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

ProgrammableWeb.com

Page 86: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

performanță: scalabilitatea & latența

limite ale API‐urilor + existența versiunilor multiple

drepturi de autor asupra datelor & licențiere

securitate: abuz, confidențialitate, încredere etc.

monetizare

lipsa unei interoperabilități reale între platforme

Page 87: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Sabin Buraga, Tehnologii XML, Polirom, 2006

Sabin Buraga (coord.), Programarea în Web 2.0,Polirom, 2007

Leonard Richardson, Sam Ruby, RESTful Web Services, O’Reilly, 2007

Raymond Yee, Pro Web 2.0 Mashups:Remixing Data and Web Services, Apress, 2008

Page 88: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

Page 89: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco

o parte dintre conținuturile grafice au fost preluate de pe situl Flickr, fotografiile fiind realizate de utilizatorii:

42311564, cedric1981, chrispitality, cjc4454, damongarrett, little_lushie, mithril, petergorges, psd, pujan, sharman, 

sharynmorrow, splatt, stuartpilbrow, that_james

Page 90: Servicii Web prin REST

infoeducatie 2009 :: servicii web prin rest

Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco


Recommended