Restful Web风格

Restful Web风格理解

  1. 后端不负责数据的渲染,只负责根据请求返回数据,有前端将数据渲染到浏览器,做到前后端分离
  2. REST(Representational State Transfer)表现层状态转化
    • REST指的是一组架构约束条件和原则
      • 为设计一个功能强、性能好、适宜通信的Web应用
      • 如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构
    • 核心概念
      • 资源(Resources)
        1. 互联网上的所有资源(文件、图片、服务等)
        2. 资源标识:URI统一资源标识符
          • 设计原则:易读、层级关系、同级关系、资源的过滤
        3. 统一资源接口
          1. RESTFul架构应该遵循统一接口原则,统一接口包含了一组受限的预定义操作,不论什么样的资源,都是通过使用相同的接口进行资源访问。接口应该使用标准的HTTP方法如GET、PUT和POST,并遵循这些方法的语义
          2. 如果按照HTTP方法的语义来暴露资源,那么接口将会有安全性和幂等性
            • GET和HEAD请求是安全的,无论请求多少次,都不改变服务器状态
            • GET、HEAD、PUT和DELETE请求是幂等的,无论对资源操作多少次,结果总是一样的,后面的请求并不会产生比第一次更多的影响
          3. 请求方式
            • GET:获取表示
            • POST:创建资源,如果没有修改,则不更新资源
            • PUT:创建资源,通过替换方式更新
            • DELETE:删除资源
          4. 统一资源接口要求使用标准HTTP方法对资源进行操作,所以URI只应该来表示资源名称,而不包含资源操作,即不应该使用动作来描述,如:
            • POST /getUser?id=1 ==> GET /User/1
            • GET /newUser ==> POST /User
            • GET /updateUser ==> PUT /User/1
            • GET /deleteUser?id=2 ==> DELETE /User/2
      • 表现层(Representation)
        • 资源是一种信息实体,它可以有很多种外在表现形式。我们把资源具体呈现出来的形式,叫做它的表现层
          1. 文本——txt、HTML、XML、JSON
          2. 图片——JPG、PNG
      • 状态转移(State Transfer)
        • 客户端应用状态在服务端提供的超媒体的指引下发生变迁。服务端通过超媒体告诉客户端当前状态有哪些后续状态可以进入
          1. 状态应该区分为应用状态和资源状态,客户端负责维护应用状态,服务端负责维护资源状态
          2. 客户端与服务端的交互必须是无状态的,并在每一次请求中包含处理该请求所需的一切信息
          3. 服务端不需要在请求间保留应用状态,只有在接受到实际请求的时候,服务端才会关注应用状态
          4. 这种无状态通信原则,使得服务端和中介能够理解独立的请求和响应。在多次请求中,同一客户端也不再需要依赖于同一服务器,方便实现高可扩展和高可用性的服务端
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值