RESTful API是什么?

1. REST 是Repersentational State Transfer的缩写

翻译为"表述性状态传递",那么什么是表述性状态传递呢?为了理解这个词语,我们从"RESTful是什么"这个问题开始讲起。

REST不是标准,是一种设计风格。按照这个设计风格设计出来的API,就叫REST API。

2. 所有的东西都是资源,所有操作都通过对资源的增删改查(CURD)实现

这个学过编程的应该很好理解,万物皆对象,在REST中就是"万物皆资源",每个资源对应一个唯一的全局资源的定位符(URI),资源是整个REST的基础。其次,就是客户端可以对资源进行管理,所有的管理操作都是通过HTTP的Action来实现。

3. 对资源的增删改查对应URL的操作(POST,DELETE,PUT,GET)

4. 所有操作都是无状态的

也就是不要使用Session

RESTful API示例

下面举几个RESTful API的例子,假设下面是一个学校学生信息的项目

  • URL: http://localhost/student
  • GET /student 获取学生列表
  • POST /student 新学员报到
  • GET /student/110 获取ID为110的学生信息
  • PUT /student/110 修改ID为110的学生信息
  • DELETE /student/110 删除ID为110的学生信息
  • GET /student/110/home 获取ID为110的学生的家庭信息

登录/注销该怎么设计API呢?

思考一下,我们登录,肯定是为了登录后做某些操作,实际上就是向服务器请求一些授权。那么注销呢,就是请求服务器删除这个授权。所以不难理解:

POST /teacher 登录

DELETE /teacher 注销

URI命名总结规律就是:

/资源名称

/资源名称/{资源ID}

/资源名称/{资源ID}/子资源名称

/资源名称/{资源ID}/子资源名称/

posted @ 2019-01-10 21:14  无尽函数  阅读(1136)  评论(1编辑  收藏  举报