Download - Servicii Web prin REST
![Page 1: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/1.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 2: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/2.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/3.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 4: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/4.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/5.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/6.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/7.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/8.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/9.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/10.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 11: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/11.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/12.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/13.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/14.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/15.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 16: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/16.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/17.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/18.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/19.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/20.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/21.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/22.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 23: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/23.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/24.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/25.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/26.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/27.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/28.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/29.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/30.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/31.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/32.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/33.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/34.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/35.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/36.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/37.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/38.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/39.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/40.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/41.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/42.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/43.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/44.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/45.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/46.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/47.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/48.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/49.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/50.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/51.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/52.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/53.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/54.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/55.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/56.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/57.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/58.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/59.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/60.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/61.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/62.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/63.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/64.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/65.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/66.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/67.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/68.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/69.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
caracteristici:combinarevizualizareagregare
![Page 70: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/70.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/71.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 72: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/72.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/73.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/74.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/75.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/76.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/77.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/78.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/79.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/80.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/81.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/82.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 83: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/83.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/84.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/85.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
ProgrammableWeb.com
![Page 86: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/86.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/87.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/88.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco
![Page 89: Servicii Web prin REST](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/89.jpg)
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](https://reader034.vdocuments.pub/reader034/viewer/2022042505/5569b8aed8b42aee2a8b4e54/html5/thumbnails/90.jpg)
infoeducatie 2009 :: servicii web prin rest
Dr. Sabin‐Corneliu Buraga – www.purl.org/net/busaco