rest - 非 RESTful 与 RESTful

标签 rest network-programming server

我对编程真的很陌生,并且在理解 RESTful API 的概念时遇到了一些麻烦。我读过 REST 和 RESTful API。我已经查看了 SO 中已经提出的问题,但似乎无法更好地理解该主题。

在我的网络编程课上,我正在使用套接字编程。任务中有两个部分,A 部分和 B 部分。

在 A 部分中,我编写了一个响应 GET 和 POST 的服务器。服务器要么检索客户端请求的文件,要么写入文件。 (使用 HTTP 协议(protocol))。

在 B 部分中,我将使用 HTTP 来实现一个 RESTful 应用程序。基本上它是一个能够处理 GET、POST、PUT 和 DELETE 的消息服务器。在这一部分中,服务器将创建一个 xml 文件并与之交互。我了解这些方法的工作原理。但我真正不明白的是以下内容:

为什么 A 部分的服务器是非 RESTful 的,而 B 部分是 RESFTful 的?

最佳答案

休息 是一种架构风格(不是像 SOAP 这样的协议(protocol),不是技术本身甚至不是实现,它基本上是一套规则),这种架构为使用 HTTP 提供了一些约束。如果您在使用 HTTP 时遵守此架构约束,则称为 。 RESTful ,否则为非 RESTful .

这些架构约束的列表here .
资源和更多详情 wikipedia

关于rest - 非 RESTful 与 RESTful,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32369856/

相关文章:

java - 如何在 linux 上从 rest 服务执行 sh 文件

sockets - 在IP层面, "leave the connection open"是否具有特定的技术含义——例如存储IP映射条目的中间网关?

sockets - 需要更多关于 listen system call linux 的见解

c - select() 返回时没有传入连接

javascript - NodeJS 初学者问题。 "Create a download for a user"并避免多个相同的服务器调用

kotlin - 如何使用 Ktor 服务器向其他服务器发送 POST 请求?

python - 为我的 tastypi 资源构建自定义过滤器

java - findAll() 在 SpringBoot Rest MySql CRUD 操作应用程序中不起作用

rest - 在 Golang 中获取动态 sql

android - 服务端数据更新时发送Push Notification到Android应用,并开启自定义Activity