Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RESTful Applications: Past, Present and Future
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ahmad Nassri
November 22, 2014
Technology
800
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RESTful Applications: Past, Present and Future
My talk at Fullstack Toronto Conference - November 2014 #FSTOCO -
http://fsto.co/speakers
Ahmad Nassri
November 22, 2014
More Decks by Ahmad Nassri
See All by Ahmad Nassri
Modern Patterns in Modular Software Design
ahmadnassri
0
230
The Roaring 2020s
ahmadnassri
0
460
Modern Patterns in Modular Software Architectures
ahmadnassri
0
2k
Scaling Documentation and Team Practices
ahmadnassri
1
990
Scaling Documentation and Team Practices
ahmadnassri
1
130
Milliseconds to Millions - Benchmarking & Optimization for Fun and Profit!! @ FullStack 2017
ahmadnassri
1
700
How to build a successful API
ahmadnassri
0
300
Modern Open Source Node.js Packages
ahmadnassri
1
710
Rise of Open Source
ahmadnassri
1
73
Other Decks in Technology
See All in Technology
Claude Code 珍プレー好プレー
shinyasaita
0
130
Hatena Engineer Seminar 37 jj1uzh
jj1uzh
0
420
インフラ寄りSREでも 開発に踏み出せる〜境界を越えてユーザー体験に向き合いたい〜
sansantech
PRO
0
200
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
0
170
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
250
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.3k
AWS Summit Japan 2026の振り返りと2027へ向けて / AWS Summit Japan 2026 Recap and Prospects for 2027
kaminashi
1
190
依頼文化をやめる日 EM視点で語るPlatform EngineeringとInclusive SRE / Discussing Platform Engineering and Inclusive SRE from an EM's Perspective
shin1988
1
260
#エンジニアBooks 30分でわかる 「技術記事を書く技術」 / engineer-books 2026-06-30
jnchito
1
180
NDIAS CTF 2026 問題解説会資料
bata_24
0
170
AIエージェントとPhysical AIが拓く製造業の変革(ハノーバーメッセリキャップ)
iotcomjpadmin
0
210
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
150
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
240
The agentic SEO stack - context over prompts
schlessera
0
840
Documentation Writing (for coders)
carmenintech
77
5.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
The Invisible Side of Design
smashingmag
301
52k
Ethics towards AI in product and experience design
skipperchong
2
320
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
960
Mobile First: as difficult as doing things right
swwweet
225
10k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
260
Transcript
None
None
GET /who HTTP/1.1 Host: www.ahmadnassri.com Accept: application/json HTTP/1.1 200 OK
Date: Sat, 22 Nov 2014 15:15:00 GMT Content-Type: application/json { "name": "Ahmad Nassri", "website": "http://www.ahmadnassri.com/", "twitter": "http://twitter.com/ahmadnassri", "email": "
[email protected]
", "bio": "Technologist, Entrepreneur, Dog Lover", "work": { "company": " ", "title": "API Master" } } Mashape.com
Consume, Monitor, Manage, Monetize and Distribute Private and Public APIs.
None
None
None
None
REST ( presentational State Transfer) is a simple stateless architecture
style that generally runs over .
: Started as notes written by Tim Berners Lee. First
standard HTTP/1.0 version (RFC 1945). HTTP/1.1 (RFC 2616) & REST presential tate ransfer by Roy Fielding Refactoring with HTTP/1.1 bis SPDY by Google IETF working group released draft of HTTP/2 RFC2616 is Dead! HTTP/2 Last Call!
RFC7230 - HTTP/1.1: Message Syntax and Routing RFC7231 - HTTP/1.1:
Semantics and Content RFC7232 - HTTP/1.1: Conditional Requests RFC7233 - HTTP/1.1: Range Requests RFC7234 - HTTP/1.1: Caching RFC7235 - HTTP/1.1: Authentication
None
None
None
Collection+JSON Hypertext Application Language ( ) ATOM
GET /player/1234567890 HTTP/1.1 { "@context": { "@vocab": "https://schema.org/", "image": {
"@type": "@id" }, "friends": { "@type": "@id" } }, "@id": "https://api.example.com/player/1234567890", "playerId": "1234567890", "name": "Kevin Sookocheff", "alternateName": "soofaloofa", "image": "https://api.example.com/player/1234567890/avatar.png", "friends": "https://api.example.com/player/1234567890/friends" }
GET /player/1234567890/friends HTTP/1.1 { "@context": [ "http://www.w3.org/ns/hydra/core", { "@vocab": "https://schema.org/",
"image": { "@type": "@id" }, "friends": { "@type": "@id" } } ], "@id": "https://api.example.com/player/1234567890/friends", "operation": { "@type": "BefriendAction", "method": "POST", "expects": { "@id": "http://schema.org/Person", "supportedProperty": [ { "property": "name", "range": "Text" }, { "property": "alternateName", "range": "Text" }, { "property": "image", "range": "URL" } ] } }, "member": [ { "@id": "https://api.example.com/player/1895638109", "name": "Sheldon Dong", "alternateName": "sdong", "image": "https://api.example.com/player/1895638109/avatar.png", "friends": "https://api.example.com/player/1895638109/friends" }, { "@id": "https://api.example.com/player/8371023509", ... } ], "nextPage": "https://api.example.com/player/1234567890/friends?page=2" }
RFC 2617
# URL Versioning: GET /api/v2/foo HTTP/1.1 # Custom Header: GET
/api/foo X-VERSION: 2 # Content Type GET: /api/foo Accept: application/vnd.github.v3.raw+json
None
None
None
None
None
None
Stalk me on Twitter , Read more on my ,
Follow my APIs on . @AhmadNassri Blog Mashape.com/AhmadNassri http://www.ahmadnassri.com http://www.mashape.com