REST服务介绍

source: http://www.cnblogs.com/wintersun/p/3917574.html

【对REST的理解需要查阅很多东西才可以,我已经把百度第一页的文章基本读完了,知乎和维基也查了一下,目前对REST基本了解了。这篇是其中一篇。是理解之后的产物。】

 RESTful service是一种架构模式,近几年比较流行了,它的轻量级web服务,发挥HTTP协议的原生的GET,PUT,POST,DELETE。 REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。REST 并非始终是正确的选择。 它作为一种设计 Web 服务的方法而变得流行,这种方法对专有中间件(例如某个应用程序服务器)的依赖比基于 SOAP 和 WSDL 的方法更少。 在某种意义上,通过强调URI和HTTP等早期 Internet 标准,REST 是对大型应用程序服务器时代之前的 Web 方式的回归。 如下图示例:

rest3

使用REST的关键是如何抽象资源,抽象得越精确,对REST的应用就越好。

REST服务关键原则:

1. 给一切物体一个ID

2.连接物体在一起

3.使用标准方法

4.资源多重表述

5.无状态通信

假设我们有这样的类OrderManagementService, CustomerManagementService:

rest2

实现REST将是基于HTTP应用协议,像下图这样:

rest1

上图实现了对订单,客户之间的相关CRUD操作,我们看到使用对应的HTTP协议。

REST能实现是一种解耦方法,让我们实现这些架构特性:性能,伸缩性,简化,可修改性,扩展性 

在J2EE中我们可以使用JAX-RS, Dropwizard… 
dotnet平台可以使用Web API, WCF,servicestack,nancyfx 

那么OData呢? OData是基于AtomPub协议的REST另一种表现形式,用于应用程序与数据的交互。 最近微软又发布了OData lib 6.6.

由于篇幅有限,今天先介绍到这儿。

 

您可能感兴趣的文章:

C#实现一个简单的REST service 
使用Fiddler测试基于WCF的REST Service 
使用WCF web API测试基于REST的WCF Service

 

如有想了解更多软件开发资讯,请关注我的微信订阅号:

MegadotnetMicroMsg_thumb1_thumb1

 



posted @ 2022-04-29 22:35  WORDLESS  阅读(15)  评论(0编辑  收藏  举报