O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Creating 3rd Generation Web APIs with Hydra

8.413 visualizações

Publicada em

Presentation of the paper "Creating 3rd Generation Web APIs with Hydra" at the 22nd Internation World Wide Web Conference (WWW2013) in Rio de Janeiro, Brazil

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Creating 3rd Generation Web APIs with Hydra

  1. 1. Creating 3rd GenerationWeb APIs with HydraMarkus LanthalerGraz University ofTechnology
  2. 2. Level 0:The Swamp of POXLevel 1: ResourcesLevel 2: HTTPVerbsLevel 3: Hypermedia Controls
  3. 3. Using Web APIs is still challenging
  4. 4. - Layered system
  5. 5. Result: tightly coupled & brittle systems
  6. 6. REST + Linked Data: a match made!?
  7. 7. Semaphobia!?
  8. 8. ResourceLinkFormClassOperationHydra
  9. 9. {"id": "cso29ax","title": "WWW2013","description": "Presentation for dev track","is_open": true,"created_at": "2012-11-26T04:49:44Z"}http://example.com/issues/cso29axhttp://example.com/issue/{id}/comments/
  10. 10. {"id": "cso29ax","title": "WWW2013","description": "Presentation for dev track","is_open": true,"created_at": "2012-11-26T04:49:44Z","comments": "/issues/cso29ax/comments/"}http://example.com/issues/cso29ax
  11. 11. {"@context": "/ctx/context.jsonld","id": "cso29ax","title": "WWW2013","description": "Presentation for dev track","is_open": true,"created_at": "2012-11-26T04:49:44Z","comments": "/issues/cso29ax/comments/"}http://example.com/issues/cso29ax
  12. 12. {"@context": {..."is_open": "http://example.com/vocab#isOpen","comments": {"@id": "http://example.com/vocab#comments","@type": "@id"}}}http://example.com/ctx/context.jsonld
  13. 13. {"@context": "/ctx/context.jsonld","id": "cso29ax","title": "WWW2013","description": "Presentation for dev track","is_open": true,"created_at": "2012-11-26T04:49:44Z","comments": "/issues/cso29ax/comments/"}http://example.com/issues/cso29ax{"@id": "#comments","@type": "hydra:Link",...}
  14. 14. {"@id": "#comments","@type": "hydra:Link","supportedOperations": [{"@id": "#create-comment","@type": "hydra:CreateResourceOperation","label": "Creates a new comment","method": "POST","expects": "#Comment","returns": "#Comment"}]}
  15. 15. {"@id": "#Comment","@type": "hydra:Class","supportedProperties": [{"property": "#text","required": true,"readonly": false,"writeonly": false}]}
  16. 16. Hydra Console
  17. 17. © 2013, Markus Lanthaler. Some Rights Reserved.http://creativecommons.org/licenses/by-nc-sa/3.0/Thank You
  18. 18. Questions?Markus Lanthalerhttp://www.markus-lanthaler.com@MarkusLanthalermail@markus-lanthaler.com
  19. 19. Image Credits(1) http://www.flickr.com/photos/joeshlabotnik/3707230247/(2) http://onlyhdwallpapers.com/high-definition-wallpaper/903850/(4) http://www.flickr.com/photos/kaptainkobold/3203311346/(6) http://www.flickr.com/photos/joyoflife/1570126182/(8) http://en.wikipedia.org/wiki/The_Scream(9) http://www.vonwong.com/ (with permission)

×