欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

restful

程序员文章站 2024-03-25 16:50:16
...

前后端分离优点:

1. pc,app,pad多端适应

2. SPA开发模式开始流行

3. 前后端开发职责不清

4. 开发效率,前后端互相等待

5. 后台开发语言和模板高度耦合,导致开发语言依赖严重

 

前后端分离缺点:

1. 前后端学习门槛增加

2. 数据依赖导致文档重要性增加

3. SEO难度增加

4. 后端开发模式迁移增加成本

 

restful综述:

1. 每一个URI代表一种资源

2. 客户端和服务器之间,传递这种资源的某种表现层

3. 客户端通过四个HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"

 

设计:

版本http://api.example.com/version

https://api.example.com/v1/zoos
https://api.example.com/v1/animals
https://api.example.com/v1/employees

  

http://api.example.com 返回api文档

{"link": {
  "rel":   "collection https://www.example.com/zoos",
  "href":  "https://api.example.com/zoos",
  "title": "List of zoos",
  "type":  "application/vnd.yourformat+json"
}}

  

尽量避免多重url,应采用get参数传递的形式

http://api.example.com/v/auth/title/1 # error
http://api.example.com/v/auth?title=1 # correct

 

过滤:

  • ?limit=10:指定返回记录的数量
  • ?offset=10:指定返回记录的开始位置。
  • ?page=2&per_page=100:指定第几页,以及每页的记录数。
  • ?sortby=name&order=asc:指定返回结果按照哪个属性排序,以及排序顺序。
  • ?animal_type_id=1:指定筛选条件

 

http协议请求中的8种方法:

 

  OPTIONS获取服务器支持的HTTP请求方法;
  HEAD跟get很像,但是不返回响应体信息,用于检查对象是否存在,并获取包含在响应消息头中的信息。
  GET向特定的资源发出请求,得到资源。
  POST向指定资源提交数据进行处理的请求,用于添加新的内容。
  PUT向指定资源位置上传其最新的内容,用于修改某个内容。
  DELETE请求服务器删除请求的URI所标识的资源,用于删除。
  TRACE回馈服务器收到的请求,用于远程诊断服务器。
  CONNECT用于代理进行传输,如使用ssl

详细http://www.ruanyifeng.com/blog/2014/05/restful_api.html