Slide 1

Slide 1 text

Quickest Primer Ever For Hypermedia

Slide 2

Slide 2 text

REST stands for...?

Slide 3

Slide 3 text

Representational State Transfer

Slide 4

Slide 4 text

First, what REST is not

Slide 5

Slide 5 text

What REST Isn't 1. CRUD 2. Pretty URLs 3. JSON 4. HTTP Verbs

Slide 6

Slide 6 text

It is not about exposing your database

Slide 7

Slide 7 text

But we design apps this way

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

If we use a state machine, then how do we transfer state from server to client?

Slide 11

Slide 11 text

Instead of transfering state, we transfer representations of state

Slide 12

Slide 12 text

Hence, Representational State Transfer

Slide 13

Slide 13 text

But what about state transitions?

Slide 14

Slide 14 text

Hypermedia

Slide 15

Slide 15 text

HATEOAS Hypermedia as the the engine of application state

Slide 16

Slide 16 text

The client relies on the server to tell it what it can do

Slide 17

Slide 17 text

Affordances

Slide 18

Slide 18 text

Example: Beer glass

Slide 19

Slide 19 text

Beer Glass: Empty State 1. Drink? No 2. Add beer? Yes 3. Complain of lack of beer? Yes

Slide 20

Slide 20 text

Beer Glass: Half Full State 1. Drink? Yes 2. Add beer? Yes 3. Complain of lack of beer? Yes

Slide 21

Slide 21 text

Beer Glass: Full State 1. Drink? Yes 2. Add beer? No 3. Complain of lack of beer? No

Slide 22

Slide 22 text

Code time