【问题标题】:Definition and Restriction of RESTFUL serviceRESTFUL服务的定义和限制
【发布时间】:2017-11-03 10:19:54
【问题描述】:
我目前有一个 c#.net 应用程序正在与另一个 c#.net 应用程序通信。一个安装在客户端,另一个安装在服务器上。它们都使用 tcp 连接绑定在套接字中。当客户端请求资源时,服务器以 JSON 格式返回请求的资源。我经常在其他论坛上听到 REST 需要 HTTP。但是,我在这里没有使用 HTTP。这是否意味着我也没有使用 REST?即使我的应用程序是无状态的?如果不是,您正式将此通信称为什么?
【问题讨论】:
标签:
.net
json
rest
network-programming
restful-architecture
【解决方案1】:
REST 是独立于协议的,根据定义它的Fielding Dissertation。您可以拥有在非 HTTP 协议上采用 REST 架构风格的系统。
具象状态转移 (REST) 风格是分布式超媒体系统中架构元素的抽象。 REST 忽略了组件实现和协议语法的细节,以便专注于组件的角色、它们与其他组件交互的约束以及它们对重要数据元素的解释。它包含了对组件、连接器和数据的基本约束,这些约束定义了 Web 体系结构的基础,以及其作为基于网络的应用程序的行为的本质。
请注意,无状态并不意味着它是 REST。你仍然需要一个围绕资源编写的超媒体驱动系统。