From 8a49b4d9212546e2dcf4bae1fa992de8ecfa36af Mon Sep 17 00:00:00 2001 From: DONTWATTOSLEEP <44776937+DONTWANTTOSLEEP@users.noreply.github.com> Date: Fri, 29 Jan 2021 11:29:40 +0800 Subject: [PATCH] =?UTF-8?q?Update=20RESTfulAPI=E7=AE=80=E6=98=8E=E6=95=99?= =?UTF-8?q?=E7=A8=8B.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit URI Uniform Resource Identifier 统一资源标识符 URL Uniform Resource Locator 统一资源定位符 --- docs/system-design/coding-way/RESTfulAPI简明教程.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/system-design/coding-way/RESTfulAPI简明教程.md b/docs/system-design/coding-way/RESTfulAPI简明教程.md index 2747288f..8c36c5ee 100644 --- a/docs/system-design/coding-way/RESTfulAPI简明教程.md +++ b/docs/system-design/coding-way/RESTfulAPI简明教程.md @@ -21,7 +21,7 @@ REST,即 **REpresentational State Transfer** 的缩写。这个词组的翻译 我们分别对上面涉及到的概念进行解读,以便加深理解,不过实际上你不需要搞懂下面这些概念,也能看懂我下一部分要介绍到的内容。不过,为了更好地能跟别人扯扯 “RESTful API”我建议你还是要好好理解一下! -- **资源(Resource)** :我们可以把真实的对象数据称为资源。一个资源既可以是一个集合,也可以是单个个体。比如我们的班级 classes 是代表一个集合形式的资源,而特定的 class 代表单个个体资源。每一种资源都有特定的 URI(统一资源定位符)与之对应,如果我们需要获取这个资源,访问这个 URI 就可以了,比如获取特定的班级:`/class/12`。另外,资源也可以包含子资源,比如 `/classes/classId/teachers`:列出某个指定班级的所有老师的信息 +- **资源(Resource)** :我们可以把真实的对象数据称为资源。一个资源既可以是一个集合,也可以是单个个体。比如我们的班级 classes 是代表一个集合形式的资源,而特定的 class 代表单个个体资源。每一种资源都有特定的 URI(统一资源标识符)与之对应,如果我们需要获取这个资源,访问这个 URI 就可以了,比如获取特定的班级:`/class/12`。另外,资源也可以包含子资源,比如 `/classes/classId/teachers`:列出某个指定班级的所有老师的信息 - **表现形式(Representational)**:"资源"是一种信息实体,它可以有多种外在表现形式。我们把"资源"具体呈现出来的形式比如 json,xml,image,txt 等等叫做它的"表现层/表现形式"。 - **状态转移(State Transfer)** :大家第一眼看到这个词语一定会很懵逼?内心 BB:这尼玛是啥啊? 大白话来说 REST 中的状态转移更多地描述的服务器端资源的状态,比如你通过增删改查(通过 HTTP 动词实现)引起资源状态的改变。ps:互联网通信协议 HTTP 协议,是一个无状态协议,所有的资源状态都保存在服务器端。 @@ -138,4 +138,4 @@ GET /classes?page=1&size=10 //指定第1页,每页10个数据 - [Building REST services with Spring](https://spring.io/guides/tutorials/classmarks/) (Spring 官网 ) - [An Intro to Spring HATEOAS](https://www.baeldung.com/spring-hateoas-tutorial) (by [baeldung](https://www.baeldung.com/author/baeldung/)) - [spring-hateoas-examples](https://github.com/spring-projects/spring-hateoas-examples/tree/master/hypermedia) -- [Spring HATEOAS](https://spring.io/projects/spring-hateoas#learn) (Spring 官网 ) \ No newline at end of file +- [Spring HATEOAS](https://spring.io/projects/spring-hateoas#learn) (Spring 官网 )