资源资源
REST资源的概念 是抽象的 ,您可以将其理解 为由服务器提供的URL标识的某种东西 。
资源可以是用户,用户列表,客户,文件或应用程序的任何实体。
例如,将用户视为具有以下属性和值的资源:
- 编号:1
- 名:约翰
- 姓氏:Doe
- 电子邮件:john.doe@example.com
网址
该URL( 统一资源定位器 )只是标识资源,也就是,其中的资源位于服务器。
例如,虽然该URL
/app/users/1定位用户的ID
1,该URL
/app/users定位在该应用程序的所有用户。
HTTP方法
REST协议无关,但是,如果你正在使用HTTP,您可以进行访问的URL与HTTP方法,如对资源的行动
GET,
POST,
PUT和
DELETE。
例如,
GET对URL
执行时
/app/users/1,您将获得ID为的用户表示形式
1。
资源表示
资源可以多种格式表示,例如JSON,XML,YAML等。
在JSON中,表示形式为:
{ "id": 1, "firstName": "John", "lastName": "Doe", "email": "john.doe@example.com"}在XML中,表示形式如下:
<user> <id>1</id> <firstName>John</firstName> <lastName>Doe</lastName> <email>john.doe@example.com</email></user>
例子1
考虑您正在使用Javascript开发应用程序,并且服务器可以将资源表示为JSON和XML。在Javascript应用程序中,处理JSON比处理XML更容易。因此,您希望将资源表示为JSON。
为此,在
GET对URL
执行时
/app/users/1,您将在HTTP标头中添加
Accept一个
application/json值,以告知服务器客户端接受的表示形式。
因此,服务器将返回表示为JSON的资源。响应将包含
Content-Type带有
application/json值的标头,指示响应的内容是JSON。
例子2
例如,除了JSON和XML外,资源还可以表示为图像或视频。
考虑一个可找到用户个人资料图片的URL
/app/users/1/profile-picture。
根据图像的类型,
Content-Type该响应将是
image/jpeg,
image/png,
image/gif,等。



