对于非 RESTful 的 HTTP Web 服务或对此类 Web 服务的调用是不是有标准术语?

Posted

技术标签:

【中文标题】对于非 RESTful 的 HTTP Web 服务或对此类 Web 服务的调用是不是有标准术语?【英文标题】:Is there a standard term for an HTTP web service that is not RESTful or for a call to such a web service?对于非 RESTful 的 HTTP Web 服务或对此类 Web 服务的调用是否有标准术语? 【发布时间】:2015-02-13 00:08:33 【问题描述】:

对于 REST 一词显然存在很多误解。许多人似乎仍然将其直接与 HTTP 联系在一起,甚至将两者等同起来,因为它们经常结合在一起,这很简单。我承认,对于“REST”一词何时适用,我仍在不断提高自己的理解。

但是,显然(在我看来)有一些 Web 服务支持格式化数据(例如 JSON、XML 等)的传输/检索,这些数据不处理超媒体或更通用协议(如 SOAP)的细节。一般来说,Web 服务的概念似乎与协议和体系结构过度混为一谈,在许多情况下,一个简单的查询字符串键值对请求和一个 10 作为响应就足够了(并且可能会减少开发时间和应用程序依赖性)。为什么总是毛茸茸的?

我想我不可能是唯一一个以这种方式看待事物的人——那么是否有可能避免流行语并理解简单的自定义数据 HTTP Web 服务的概念?或者当我应该说“REST”时,我是否过于语义化?

【问题讨论】:

【参考方案1】:

对于非 RESTful 的 HTTP Web 服务或对此类 Web 服务的调用是否有标准术语?

自定义网络服务,你自己说的,或者可能是 WebAPI,或者 HTTP API ?!?

A web service 是一个软件系统,旨在支持通过网络进行可互操作的机器对机器交互。有很多方法可以实现一个简单的查询字符串键值对请求和 1 或 0 作为响应确实足够了。

这是关于观众的。

如果这是一项内部服务,您可以根据需要构建它并根据需要命名它。但是,如果您想将它公开给客户或用户,而不是您自己,那么您实际上只需要选择:SOAP 或 REST。

为什么?

由于现有工具、现有文档、现有经验、可用库、服务器支持、语言等。

您的问题的标题表达了这一点:您正在寻找一个术语,人们理解它的含义。现在人们了解 SOAP 并且他们(认为他们)了解 REST。

【讨论】:

观众在这里绝对是一个重要的考虑因素。尽管您是否建议我将 SOAP 和 REST 视为相互排斥的,至少在命名方面是这样?感觉不诚实,即使它确实明白了这一点。 @thesquaregroot:我不能说它们是互斥的、命名法或其他。在某些方面它们是相似的,但大量的用例也使它们不同。问题在于 SOAP + REST 是圣战领域,所以人们最终会选择其中一个,而实际上它们只是 Web 服务工具箱中的两个工具。

以上是关于对于非 RESTful 的 HTTP Web 服务或对此类 Web 服务的调用是不是有标准术语?的主要内容,如果未能解决你的问题,请参考以下文章

Python Tornado搭建高并发Restful API接口服务

RESTFul Shiro

非RESTful与RESTful

Restful对于URL的简化

通过 RESTful-Http 与 iPhone 应用程序中的 Web 服务进行通信的最佳方式是啥

spring-cloud 构建一个restful的web服务