rest & webapi
TRANSCRIPT
![Page 1: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/1.jpg)
RESTfulAuthor:
TU TranSkype: tranthanhtu83
![Page 2: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/2.jpg)
Overview
Actions (Verbs)
Output
Constraints
Q&A
Agenda
TU Tran
![Page 3: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/3.jpg)
REST stands for “Representational State Transfer”
Overview
TU Tran
![Page 4: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/4.jpg)
Overview
TU Tran
Web serverClient (Browser)
Request
Response
Hey, I need to GET detail of #4 user
Here it is:
![Page 5: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/5.jpg)
Actions (Verbs)
TU Tran
Get list of resource
Get detail of resource
Create new resource
Update of resource
Delete a resource
![Page 6: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/6.jpg)
Actions/ Get
TU Tran
![Page 7: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/7.jpg)
Actions/ Create
TU Tran
![Page 8: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/8.jpg)
Actions/ Update
TU Tran
![Page 9: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/9.jpg)
Actions/ Delete
TU Tran
![Page 10: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/10.jpg)
Output
TU Tran
-JSON-XML-CSV
![Page 11: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/11.jpg)
Output
TU Tran
- Use header requestAccept: application/json
- Use query stringGet http://localhost/user.json
- Use file extensionGet http://localhost/user.json
![Page 12: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/12.jpg)
Constraints
TU Tran
Client – ServerUniform InterfaceStatelessCacheableLayered SystemCode on Demand (optional)
![Page 13: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/13.jpg)
Constraints / Client - Server
TU Tran
I will show this as the list of users
OK, I will get this from MSSQL
![Page 14: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/14.jpg)
- Get detail of #4 user: ../api/users/4
- Get detail of #2 category: ../api/categories/2
Constraints / Uniform Interface
TU Tran
![Page 15: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/15.jpg)
The request must be independent each other Easy to add more servers if need
Constraints / Stateless
TU Tran
Web serverClient (Browser)
Request
Response
Hey Server, Please looks in the package to get whatever you need
OK, I have all information to process your request
![Page 16: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/16.jpg)
Constraints / Cacheable
TU Tran
Avoiding unnecessary processing Significantly increasing performance
![Page 17: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/17.jpg)
Constraints / Layered System
TU Tran
This structure is much more flexible to change
![Page 18: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/18.jpg)
TU Tran
Q&A
![Page 19: Rest & WebApi](https://reader036.vdocuments.site/reader036/viewer/2022062400/5882ed2d1a28ab3f1e8b4ff3/html5/thumbnails/19.jpg)
THANK YOU
TU Tran