RESTful web服务是什么?

42

可能是重复问题:
什么是RESTful编程?

什么是RESTful Web服务?可以举个例子吗?

asmx Web服务和WCF RESTful服务之间有什么区别?

5个回答

94

REST是一种客户端/服务器体系结构,可以充分利用HTTP协议的全部功能。

REST中的一些相关要点:

  • 服务器上的每个URL都代表一个资源,它可以是一个集合资源或一个元素资源
    • 集合资源 可以在类似于 http://restful.ex/items/ 的 URL 上获得,它是一个项列表的表示
    • 元素资源 可以在类似于 http://restful.ex/items/2 的 URL 上获得,它是一个单个项目的表示,由2标识。
  • 不同的HTTP方法用于不同的CRUD操作:
    • GET 是读操作
    • PUT 是写/修改操作
    • POST 是创建/新建操作
    • DELETE 是删除...好吧,这个有点自解说明。
  • 状态(或者说客户端上下文)不存储在服务器端;所有状态都在客户端请求和服务器响应之间传递的表示中。

2
感谢Richard对REST HTTP协议的清晰解释。 - Balasubramani

17
您可以查看REST架构风格的创建者Roy Fielding的维基页面此处,然后转到他的博士论文这里,最后只需查看Twitter API的快速示例即可。

12

基本上是使用HTTP方法(GET、POST、PUT、DELETE)实现CRUD的Web服务。


8

RESTful Web服务使用HTTP方法显式地将REST操作映射到HTTP方法:

  • 创建 - POST
  • 检索 - GET
  • 更新 - PUT
  • 删除 - DELETE

这里有一个链接,可以提供一个很好的总结。


4
正确的行话术语是CRUD(创建,读取,更新,删除)。 - Chase Florell

1

请查看REST的描述。符合此原则的Web服务称为RESTful。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接