Java 如何证明RESTfulWeb服务是Web服务?
昨天我参加了一次面试,我遇到了一个有趣的问题,我被卡住了。 问题是“如何说RESTfulWeb服务是web服务?”。我试图解释所有可能的证明方法。但是所有的答案都被“servlet也可以这样做。那么servlet是RESTfulWeb服务?”Java 如何证明RESTfulWeb服务是Web服务?,java,web-services,rest,servlets,Java,Web Services,Rest,Servlets,昨天我参加了一次面试,我遇到了一个有趣的问题,我被卡住了。 问题是“如何说RESTfulWeb服务是web服务?”。我试图解释所有可能的证明方法。但是所有的答案都被“servlet也可以这样做。那么servlet是RESTfulWeb服务?” 有人可以分享您的想法吗?您可以使用Servlet设计RESTful Web服务 Servlet帮助您为HTTP请求创建HTTP响应。RESTful web服务位于HTTP协议之上,因此您可以使用Servlet创建REST服务。任何基于HTTP的代码(使用任
有人可以分享您的想法吗?您可以使用Servlet设计RESTful Web服务 Servlet帮助您为HTTP请求创建HTTP响应。RESTful web服务位于HTTP协议之上,因此您可以使用Servlet创建REST服务。任何基于HTTP的代码(使用任何语言等)都可以是RESTful web服务,只要它符合REST的要求 见:
有关上述问题的详细信息,请参见此您对此类问题的处理方法应该是自下而上的。从服务的定义开始。然后定义Web服务,然后您就可以轻松区分哪些是Web服务,哪些不是。一般来说,对于这样的讨论,我的攻击方式如下:
HTTP
)使用的服务都是web服务李>
动词
与名词
分离和资源的概念方面增加了更多的限制李>
Java世界中的所有Web Restful服务都是通过Servlet编写的,Servlet是处理
HTTP
的低端实现。如果传输不是HTTP
,它是服务而不是Web服务:)要回答您的问题,让我们先问一下什么是Web服务
- 纯粹抽象地说,
- 现在,两台设备通过互联网进行通信的公认的行业规范是使用XML消息(这使得
- 这就引出了不同类型的web服务,主要分为SOAP和RESTful
- SOAPWeb服务使用XML(它符合特定协议或XML模式,换句话说,它被称为XML)。因此,soapweb服务在web服务及其客户机之间交换消息的方式上设置了某些规则/规则。这些消息可以使用HTTP之外的任何方便协议进行交换
- 现在在一个RESTful场景中,您仍然可以交换消息(xml/json等),但是没有新的附加规范(我知道,但它是为了提供工具支持RESTful而发明的,与RESTful web服务本身无关)
- 在RESTful中,没有新的协议定义(用于交换消息)。它使用已经建立的HTTP协议规范,将URL中的参数作为路径元素传递,并使用HTTP方法发送数据(即GET/POST/PUT/DELETE)
- 接受GET/POST请求
- 返回一个HTML(通常是XML)
- 映射到URL模式/
services/getstockquote
- 获取GOOG作为URL路径中的输入数据,它可以解析、查询某些系统以获取Google的最新股票报价
- 将数据作为text/xml返回给客户端 这个servlet不满足以下RESTful场景吗
- 显式使用HTTP方法
- 没有国籍
- 公开类似URI的目录结构
- 传输XML、JavaScript对象表示法(JSON)(本质上是文本)
所以从技术上讲,Servlet是一种RESTful web服务,但这可能不足以满足web服务本身的一般业务需求。因此,对于一个全面的RESTful web服务,我们需要一个专门为满足这些基本业务需求而编写的servlet。我认为答案相当明显,所以他们给您的问题有点奇怪。基于SOAP和REST的完整服务都使用HTTP作为传输机制,因此实际上它们是web服务
它们的不同之处在于,基于SOAP的服务更严格地由一个规范定义,其中REST完整服务更像是一种架构风格,在其实现中不受约束。这里的信息可能重复,这有助于解释:感谢Paul对其进行编辑,使其更具表现力。感谢您的所有支持支持和评论。答案对我来说是合理的。再次感谢你。