在前后端分离的应用项目模式中,后端需要提供API接口,REST就是适用这种模式的API接口的设计风格。REST全称是Representational State Transfer,表征性状态转移。
url链接一般采用https协议进行传输
在API地址中带接口标识,咱们一般放在地址栏中(放在域名中)
https://api.baidu.com
https://www.baidu.com/api
-https://api.weibo.com/2/
-https://api.weibo.com/v2/
-https://api.weibo.com/?version=2
-https://api.weibo.com/v1/login ?--->需要的参数name和pwd
-https://api.weibo.com/v2/login --->需要的参数name和pwd和code
前后端交互的数据我们称之为资源
?-https://127.0.0.1/api/v1/users
-https://127.0.0.1/api/v1/get_users ?# 不符合规范
?? ?-获取资源用get
? ? -新增资源用post
? ? -修改资源使用put
? ? -删除资源使用delete
? ? https://api.baidu.com/books ? ? ?- get请求:获取所有书
? ? https://api.baidu.com/books/1 ? ?- get请求:获取主键为1的书
? ? https://api.baidu.com/books ? ? ?- post请求:新增一本书书
? ? https://api.baidu.com/books/1 ? ?- put请求:整体修改主键为1的书
? ? https://api.baidu.com/books/1 ? ?- patch请求:局部修改主键为1的书
? ? https://api.baidu.com/books/1 ? ?-delete请求:删除主键为1的书
https://api.example.com/v1/zoos?name=猴子 get请求
响应中带状态码
http响应状态码:1xx,2xx,3xx,4xx,5xx
自己定制的状态码(用的多): 100成功,每个公司有的不一样
{code:100,msg:成功}
GET /collection:返回资源对象的列表(数组) ? ? ? [{name:xx,age:19},{name:xx,age:19},{}]
GET /collection/resource:返回单个资源对象 ? ? ? ?{name:xx,age:19}
POST /collection:返回新生成的资源对象 ? ? ? ? ? ? {name:yy,age:19}
PUT /collection/resource:返回完整的资源对象 ? ? ? {name:xx,age:20}
PATCH /collection/resource:返回完整的资源对象 ? ? {name:xx,age:20}
DELETE /collection/resource:返回一个空文档 ? ? ? ?
"url": "http://blog.sina.com.cn/zaku",