REST服务开发实战:从Web基础到架构思想

3星 · 超过75%的资源 需积分: 9 9 下载量 45 浏览量 更新于2024-09-11 1 收藏 58KB DOC 举报
REST服务开发实战 REST介绍 REST(Representational State of Resource)是一种架构风格、概念或约束,旨在提供一种统一的接口来访问web资源。RESTful应用程序必须遵守一定的约束,如每个资源都应该有一个唯一的标识、使用标准的方法来更改资源的状态、Request和Response的自描述、资源多重表述、无状态的服务等。 Web和REST之间的关系 Web是我们在互联网上最常用的服务,甚至在某些人的心中,互联网就是Web。Web只是互联网的一部分而已,只是大家用的最多而已,我们访问的所有网站都是基于Web。REST是基于Web的,RESTful应用程序使用URI、HTTP、Hypertext等Web基础协议来实现资源的访问和操作。 什么是REST? REST并不是一种新兴的技术语言,也不是什么新的技术框架。准确来说,REST只是一种概念、风格或者约束,是回归HTTP本身的建议。REST由Roy Thomas Fielding在他的博士论文《Architectural Styles and the Design of Network-based Software Architectures》中提出的一种架构思想。 RESTful应用程序的约束 Roy Fielding在他的论文中提出了一个RESTful应用程序应该具备的几点约束: * 每个资源都应该有一个唯一的标识 * 使用标准的方法来更改资源的状态 * Request和Response的自描述 * 资源多重表述 * 无状态的服务 REST和RPC之间的区别 REST和RPC(Remote Procedure Call)之间有很大的差异。RPC实际上更符合一般程序员的思维,但REST和RPC之间的区别在于,REST是基于资源的,而RPC是基于过程的。RESTful应用程序关注的是资源的访问和操作,而RPC关注的是过程的调用。 URI、HTTP、Hypertext在REST中的作用 URI(统一资源标识符)用来标识资源,HTTP(超文本传输/转移协议)用来操作资源,Hypertext(超文本)用来描述资源的内容与状态。在RESTful应用程序中,URI、HTTP、Hypertext是三大基础技术。 REST是一种架构风格、概念或约束,是基于Web的,旨在提供一种统一的接口来访问web资源。RESTful应用程序必须遵守一定的约束,如每个资源都应该有一个唯一的标识、使用标准的方法来更改资源的状态、Request和Response的自描述、资源多重表述、无状态的服务等。