RESTful API Basics
Slides: https://slides.com/danielmouris/nait_presentation/
Live: https://slides.com/danielmouris/nait_presentation/live
Where Are We?
-
What We're Covering
- Assumptions
-
What's a RESTful API?
-
Examples
a. GET data (asking for data from the server)
b. POST data (giving the data to the server to save)
Where Are We?
-
What We're Covering
-
Assumptions
-
What's a RESTful API? Why use it?
-
Examples
a. GET data (asking for data from the server)
b. POST data (giving the data to the server to save)
What You Should Know
You should know the following:
- Basics of HTTP
- Get
- Post
- Put
- Update
- Delete
- JSON
- Domain (www.github.com)
- Endpoint (anything after the domain)
Where Are We?
-
What We're Covering
- Assumptions
-
What's a RESTful API? Why use it?
-
Examples
a. GET data (asking for data from the server)
b. POST data (giving the data to the server to save)
What is a RESTful API?
Stands for the following:
REpresentational
State
Transfer
Application
Programming
Interface
What is a RESTful API?
It's a way to ask for, modify, create , and delete data (CRUD operations) on another computer or server over the web.
It's also a way that you can trigger an action on a server (such as what anyone here uses Python for) and getting a result.
You can think of a RESTful API as the way we share information when we speak aloud to each other.
Why use it?
Allows a unification of method to call the backend.
- Server to Server (packages: requests, urllib3)
- Server to Mobile App (Android, Ios, Flutter)
- Server to Front End (React, Angular, Vue.js)
Almost all major companies use it, and it's the easiest way to communicate.
- Spotify API
- Google Maps and all others
- Hackernews API
Dan, I'm Lost
Let's see some examples to explain futher
Where Are We?
-
What We're Covering
- Assumptions
-
What's a RESTful API? Why use it?
-
Examples
a. GET data (asking for data from the server)
b. POST data (giving the data to the server to save)
Get Data Example
Me
You
Do you have cats?
1. Ask if I have cats.
Air between us
Get Data Example
Me
You
2. I'll respond to tell you that I do have cats
I have three cute cats
Note:
I'll only tell you that I have three cats if I trust you. Otherwise I won't tell you.
Air between us
Get Data Example
Server
Serving API
- Mobile App
- Other Server
- Front End
GET /cats/
This will be sent with a token to show that we can trust the client (I'll cover that later).
The Internet
Get Data Example
Server
Serving API
- Mobile App
- Other Server
- Front End
Status 200
Body: Cat Names
If the token is correct, we'll give the information.
The Internet
Where Are We?
-
What We're Covering
- Assumptions
-
What's a RESTful API?
-
Examples
a. GET data (asking for data from the server)
b. POST data (giving the data to the server to save)
Post Data Example
Me
You
My dog is named Spot
1. Tell me you have dog named Spot
Air between us
Post Data Example
Me
You
2. I'll respond to tell you that I understand that you have a dog named spot
Thanks! I bet he's cute!
Note:
I'll only remember if I trust this person, otherwise I'll throw this information away.
Air between us
Post Data Example
Server
Serving API
- Mobile App
- Other Server
- Front End
POST /dogs/
This will be sent with a token to show that we can trust the client (I'll cover that later).
The Internet
Body: {'name': 'Spot'}
Post Data Example
Server
Serving API
- Mobile App
- Other Server
- Front End
Status 204
If the token is correct, we'll confirm that we have stored this information.
The Internet
Conclusion
RESTful APIs are way that computers communicate.
It's really not that different than the way we speak to each other!
Thank you for listening!
Here's my kitties from the example.
Marshmallow
Ghost
Gambit
Questions?
Nait Presentation 10 minutes.
By Daniel Mouris
Nait Presentation 10 minutes.
Creating an authenticated API from scratch for beginners.
- 726