RESTful
Laiyong Wang Lv6

REST 释义

一种软件设计风格,全称为 Representational State Transfer,直译为表现层状态转移,或许可以解释为用 URL 定位资源,用 HTTP 动词描述操作

白话文就是,相同的 url,不同方式进行请求,GET 用来获取资源,POST 用来新建资源,PUT 用来更新资源,DELETE 用来删除资源

RESTful api

正常来说,接口无非就是增删改查,符合 REST 标准即可认为是 RESTful api
嗯,不管对不对,反正我是这样理解的

RESTful 架构

  • 每一个 URI 代表一种资源
  • 客户端和服务器之间,传递这种资源的某种表现层
  • 客户端通过四个 HTTP 动词,对服务器端资源进行操作,实现 “表现层状态转化”

PS

不要一个接口干很多事,一个接口就是一个资源,每个接口尽量颗粒度最小,就算是批量的,也尽量循环处理,考虑并发问题和死锁问题

method 注意点

PUT 对后台来说 PUT 方法的参数是一个完整的资源对象,它包含了对象的所有字段

PATCH 对后台来说 PATCH 方法的参数只包含我们需要修改的资源对象的字段

$li-margin-bottom = 0.8rem $post-tool-button-width = 2.5rem .post-tools-container { padding-top var(--component-gap) .post-tools-list { li { margin-bottom $li-margin-bottom &:last-child { margin-bottom 0 } } li.tools-item { position relative box-sizing border-box width $post-tool-button-width height $post-tool-button-width color var(--text-color-3) font-size 1.2rem background var(--background-color-1) border-radius 50% box-shadow 2px 2px 5px var(--shadow-color) cursor pointer &:hover { box-shadow 2px 2px 8px var(--shadow-hover-color) } i { color var(--text-color-3) } &:hover { color var(--background-color-1) background var(--primary-color) i { color var(--background-color-1) !important } } &.toggle-show-toc { display none } &.go-to-comments { .post-comments-count { position absolute top 0 right -1rem display none align-items center justify-content center box-sizing border-box min-width 1.1rem height 1.1rem padding 0 0.2rem color var(--badge-color) font-size 12px background var(--badge-background-color) border-radius 0.4rem +keep-tablet() { display none !important } } } } li.status-item { width $post-tool-button-width height $post-tool-button-width color var(--text-color-3) font-size 1.6rem cursor pointer &.post-lock { cursor default .fa-lock-open { display none color var(--keep-success-color) } &.decrypt { cursor pointer .fa-lock-open { display block } .fa-lock { display none } } } } } }