From a4da665b763240da3846051aafa49aed6406fdf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E6=9D=A8?= <1142614838@qq.com> Date: Sun, 19 May 2024 13:03:18 +0000 Subject: [PATCH 1/4] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=8F=B6=E6=9D=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\217\266\346\235\250/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\217\266\346\235\250/.keep" diff --git "a/\345\217\266\346\235\250/.keep" "b/\345\217\266\346\235\250/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 0487f19ef19eda3376d5bee968ef60922f343139 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E6=9D=A8?= <1142614838@qq.com> Date: Sun, 19 May 2024 13:48:25 +0000 Subject: [PATCH 2/4] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" diff --git "a/\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" "b/\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From dc2f89adfd2a8e24846626d28dd62d3f43d3b3ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E6=9D=A8?= <1142614838@qq.com> Date: Sun, 19 May 2024 13:48:53 +0000 Subject: [PATCH 3/4] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 叶杨 <1142614838@qq.com> --- ...2\204 Web API \347\261\273\345\236\213.md" | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 "\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" diff --git "a/\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" "b/\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" new file mode 100644 index 0000000..84ec103 --- /dev/null +++ "b/\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" @@ -0,0 +1,36 @@ +## 常见的 Web API 类型 + +### RESTful API + +RESTful API 是一种基于 REST(Representational State Transfer)原则设计的 API。它使用 HTTP 协议的不同方法(GET、POST、PUT、DELETE 等)来执行不同的操作,例如获取数据、创建资源、更新资源或删除资源。RESTful API 使用简单的 URL 结构和状态码,易于理解和实现。 + +### GraphQL API + +GraphQL 是一种查询语言,允许客户端请求指定所需的数据。相比于传统的 RESTful API,GraphQL API 允许客户端精确地指定返回结果的格式和内容,避免了多次请求和返回冗余数据的问题。GraphQL API 的灵活性和效率使其在一些场景下更具优势。 + +## RESTful API 的特点 + +- **基于资源(Resource-based)**:在 RESTful API 中,每个 URL 代表一个资源(Resource),并且通过 HTTP 方法对资源进行操作。资源可以是实体对象(如用户、文章)或集合(如用户列表)。 + +- **使用 HTTP 方法**:RESTful API 使用 HTTP 方法来定义对资源的操作。常用的方法包括 GET(获取资源)、POST(创建资源)、PUT(更新资源)、DELETE(删除资源)等。 + +- **无状态(Stateless)**:RESTful API 是无状态的,每个请求都是独立的,服务器不会保存请求的上下文信息。客户端需要提供所有请求所需的数据和信息。 + +- **使用 JSON 或 XML 进行数据交换**:通常,RESTful API 使用 JSON 或 XML 格式来传输数据。JSON 更为常用,因为它具有更好的可读性和易用性。 + +## RESTful API 的设计原则 + +- 使用合适的 HTTP 方法对资源进行操作,如 GET、POST、PUT、DELETE。 +- 使用简洁明了的 URL 结构,使其易于理解和记忆。 +- 对资源的操作应该是幂等的,即无论执行多少次都不会对资源状态产生影响。 +- 返回合适的状态码(如 200、201、404、500)以表示请求的成功或失败。 + +## RESTful API 的示例 + +假设有一个博客系统,可以使用以下方式设计 RESTful API: + +- 获取所有文章:`GET /api/articles` +- 获取单篇文章:`GET /api/articles/:id` +- 创建文章:`POST /api/articles` +- 更新文章:`PUT /api/articles/:id` +- 删除文章:`DELETE /api/articles/:id` \ No newline at end of file -- Gitee From 547fd7c35141116cbc7e7763acce04699df2ff8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E6=9D=A8?= <1142614838@qq.com> Date: Sun, 19 May 2024 23:26:47 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...2\204 Web API \347\261\273\345\236\213.md" | 70 +++++++++---------- .../\347\254\224\350\256\260/.keep" | 0 2 files changed, 35 insertions(+), 35 deletions(-) rename "\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" => "\345\217\266\346\235\250/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" (98%) delete mode 100644 "\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" diff --git "a/\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" "b/\345\217\266\346\235\250/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" similarity index 98% rename from "\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" rename to "\345\217\266\346\235\250/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" index 84ec103..af3e2a7 100644 --- "a/\345\217\266\346\235\250/\347\254\224\350\256\260/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" +++ "b/\345\217\266\346\235\250/2024-05-16\345\270\270\350\247\201\347\232\204 Web API \347\261\273\345\236\213.md" @@ -1,36 +1,36 @@ -## 常见的 Web API 类型 - -### RESTful API - -RESTful API 是一种基于 REST(Representational State Transfer)原则设计的 API。它使用 HTTP 协议的不同方法(GET、POST、PUT、DELETE 等)来执行不同的操作,例如获取数据、创建资源、更新资源或删除资源。RESTful API 使用简单的 URL 结构和状态码,易于理解和实现。 - -### GraphQL API - -GraphQL 是一种查询语言,允许客户端请求指定所需的数据。相比于传统的 RESTful API,GraphQL API 允许客户端精确地指定返回结果的格式和内容,避免了多次请求和返回冗余数据的问题。GraphQL API 的灵活性和效率使其在一些场景下更具优势。 - -## RESTful API 的特点 - -- **基于资源(Resource-based)**:在 RESTful API 中,每个 URL 代表一个资源(Resource),并且通过 HTTP 方法对资源进行操作。资源可以是实体对象(如用户、文章)或集合(如用户列表)。 - -- **使用 HTTP 方法**:RESTful API 使用 HTTP 方法来定义对资源的操作。常用的方法包括 GET(获取资源)、POST(创建资源)、PUT(更新资源)、DELETE(删除资源)等。 - -- **无状态(Stateless)**:RESTful API 是无状态的,每个请求都是独立的,服务器不会保存请求的上下文信息。客户端需要提供所有请求所需的数据和信息。 - -- **使用 JSON 或 XML 进行数据交换**:通常,RESTful API 使用 JSON 或 XML 格式来传输数据。JSON 更为常用,因为它具有更好的可读性和易用性。 - -## RESTful API 的设计原则 - -- 使用合适的 HTTP 方法对资源进行操作,如 GET、POST、PUT、DELETE。 -- 使用简洁明了的 URL 结构,使其易于理解和记忆。 -- 对资源的操作应该是幂等的,即无论执行多少次都不会对资源状态产生影响。 -- 返回合适的状态码(如 200、201、404、500)以表示请求的成功或失败。 - -## RESTful API 的示例 - -假设有一个博客系统,可以使用以下方式设计 RESTful API: - -- 获取所有文章:`GET /api/articles` -- 获取单篇文章:`GET /api/articles/:id` -- 创建文章:`POST /api/articles` -- 更新文章:`PUT /api/articles/:id` +## 常见的 Web API 类型 + +### RESTful API + +RESTful API 是一种基于 REST(Representational State Transfer)原则设计的 API。它使用 HTTP 协议的不同方法(GET、POST、PUT、DELETE 等)来执行不同的操作,例如获取数据、创建资源、更新资源或删除资源。RESTful API 使用简单的 URL 结构和状态码,易于理解和实现。 + +### GraphQL API + +GraphQL 是一种查询语言,允许客户端请求指定所需的数据。相比于传统的 RESTful API,GraphQL API 允许客户端精确地指定返回结果的格式和内容,避免了多次请求和返回冗余数据的问题。GraphQL API 的灵活性和效率使其在一些场景下更具优势。 + +## RESTful API 的特点 + +- **基于资源(Resource-based)**:在 RESTful API 中,每个 URL 代表一个资源(Resource),并且通过 HTTP 方法对资源进行操作。资源可以是实体对象(如用户、文章)或集合(如用户列表)。 + +- **使用 HTTP 方法**:RESTful API 使用 HTTP 方法来定义对资源的操作。常用的方法包括 GET(获取资源)、POST(创建资源)、PUT(更新资源)、DELETE(删除资源)等。 + +- **无状态(Stateless)**:RESTful API 是无状态的,每个请求都是独立的,服务器不会保存请求的上下文信息。客户端需要提供所有请求所需的数据和信息。 + +- **使用 JSON 或 XML 进行数据交换**:通常,RESTful API 使用 JSON 或 XML 格式来传输数据。JSON 更为常用,因为它具有更好的可读性和易用性。 + +## RESTful API 的设计原则 + +- 使用合适的 HTTP 方法对资源进行操作,如 GET、POST、PUT、DELETE。 +- 使用简洁明了的 URL 结构,使其易于理解和记忆。 +- 对资源的操作应该是幂等的,即无论执行多少次都不会对资源状态产生影响。 +- 返回合适的状态码(如 200、201、404、500)以表示请求的成功或失败。 + +## RESTful API 的示例 + +假设有一个博客系统,可以使用以下方式设计 RESTful API: + +- 获取所有文章:`GET /api/articles` +- 获取单篇文章:`GET /api/articles/:id` +- 创建文章:`POST /api/articles` +- 更新文章:`PUT /api/articles/:id` - 删除文章:`DELETE /api/articles/:id` \ No newline at end of file diff --git "a/\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" "b/\345\217\266\346\235\250/\347\254\224\350\256\260/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee