一:web服务交换
REST:表述行状态转移。
SOPA:简单的对象访问协议。
XML-RPC:基于xml的远程过程调用。不常用
二:理解REST
1:什么是rest
--Respresenttaional state Transfer(表述性状态转移)
--表述性就是指资源。
2:什么是资源
资源,任何事物只要被引用都可以说是资源。包括信息,数据,关系。在网络中我们需要引用一个资源,需要一个标识,而唯一标示就是URI.
3:URL 和 URI
--URL 统一资源定位符(地址)
--URI 统一资源标识
4:统一资源接口
--对一个资源的访问,可以使用一个url,通过url的请求方式来进行不同的资源操作。如get请求查询,post增加,put修改,delete资源删除
5:状态转移
当我们需要从该资源跳转其他状态,需要通过超链接
6:资源的表述
--资源的表述就是资源的表述形式,当客户端向服务器发送请求资源时,我们怎么知道服务端返回的资源的格式。所以可以通过http协议,客户端通过请求头请求特定的表现形式。而服务器通过
content-type告诉客户端的表现形式。
三:RESTful规范
1:面向资源编程
每一个url代表一个资源,URL尽量用名词,不要用动词
2:在url中体现版本
3:在url中体现是否是api
4:在url中携带过滤条件
5:地址尽量使用https
6:响应设置状态码
--1** 信息,服务器收到请求,需要请求者继续执行操作
--2** 成功,操作被成功接收并处理
--3** 重定向,需要进一步的操作以完成请求
--4** 客户端错误,请求包含语法错误或无法完成请求
--5** 服务器错误,服务器在处理请求的过程中发生了错误
7: 根据method不同,进行不同的操作
--GET/POST/PUT/DELETE/PATCH
8:返回值
GET请求 返回查到所有或单条数据
POST请求 返回新增的数据
PUT请求 返回更新数据
PATCH请求 局部更新 返回更新整条数据
DELETE请求 返回值为空
9:返回错误信息
返回值携带错误信息
10:Hypermedia API
如果遇到需要跳转的情况 携带调转接口的URL