Day18 Laravel - CRUD .feat RESTful API

过了17天的铺陈终於迎来了我最喜欢的18天,前面已经建立起一个良好的基础环境可以好好的开始专案了,所以今天就来介绍每个功能最基础的组成:CRUD。

所谓的CRUD就是由Create、Read、Update、Delete,新增、读取、更新、删除的四个英文字的第一个英文字母所组成,通常Read会包含两个功能,一个是List列表功能及Detail的详细资料功能。

举例来说,我想要做一个书架的功能,上面可以新增、删除我所拥有的书籍,然後可以讲书名做成一个列表让他人观看,耶可以有一个详细页面来介绍这本书籍的内容,以及资讯输入错误时可以让我更正的功能,在RESTful api尚未普及时,每个功能的名称可能会被取名为这样

新增 - POST method

/add_book

列表 - GET method

/update_book

详细 - GET method

/detail_book/{book_id}

修改 - POST method

/update_book/{book_id}

删除 - POST method

/delete_book/{book_id}

这是我今天可能的命名方式,也有可能下周我的命名方式就不一样了,其他人的命名方式可能也跟我不一样,所以就有了RESTful API的介面统一格式,搭配HTTP method来达到统一的命名方式,减少因为个人风格造成的麻烦

列表 - GET method

/books

新增 - POST method

/books

详细 - GET method

/books/{book_id}

修改 - PUT method

/books/{book_id}

删除 - DELETE method

/books/{book_id}

有些人会在修改时选用两种方法,一个是PUT一个是PATCH,PUT需要提供全部的资讯,PATCH仅需提供要修改的资讯即可,这个部分我觉得只要团队沟通过後决定就可以了。

我觉得Imgur的API文件就是一个很好的范例,Imgur本身也是一个很好用的图床,可以多多使用并感受RESTful API的好处。

当然RESTful API不是仅有统一介面标准这个功能而已,还有Stateless、Cacheable、Client-Server、Layered System、Code on Demand,包含Uniform Interface共六大概念,今天仅介绍Uniform Interface就好。

今天的介绍到此结束,谢谢观看的各位,请记得按赞分享开启小铃铛,你的支持会让按赞数+1。


<<:  [Day3] 作用域

>>:  Swift 新手-如何使用 Xcode 建立专案?记得先更新作业系统!

Constructor

当我们今天要储存个人的信息会使用到object,但仔细思考若有100位的话,是否太麻烦了 let p...

Day 02 - 环境安装(中) Docker & MySQL

作业系统建置完成後就可以安装资料库环境,这里的做法是让MySQL 运行在Docker 上,原因只是未...

Day 17 - Linux 上设定 PBR

我们需要使用 FRRouting,若还没安装的话,请先安装一下 这次使用的系统为 Ubuntu 20...

python 练习

今天要来练习的是必较难的题目,是出自於APCS 105年3月5日的实作题1,那我们就开始吧! 题目 ...

开源电商系统 OpenCart 3.0.3.7 台湾优化版释出

OpenCart 官方的 3.0.3.7 版於上周释出,除了修正许多 3.0.x 版累积的小问题,另...