restful总结

43 篇文章 0 订阅
7 篇文章 0 订阅

一.restful是什么?

 本质上是一种软件架构风格,核心是面向资源去设计API 

设计概念和准则

1.网络上的所有事件都可以被抽象为资源

2.每一个资源都有唯一的资源标识,对资源的操作不会改变这些标识

3.所有的操作是无状态的

二.为什么要使用restful?

解决的问题有:

1.减低开发的复杂性

2.提高系统的可伸缩性

三.HTTP协议-URL

http 是一个属于应用层的协议,特点是简捷、快速

schema://host[:port]/path[?query-string[#anchor]

achema:指定低层使用的协议(例如:http,https,ftp)

host 服务器的IP地址或者是域名

port 服务器端口HTTP 80 HTTPS 443

path 访问资源的路径

jquery-string 发送给http服务器的数据

anchor 苗点

请求

组成格式:请求行、消息报头、请求正文

请求行

格式:method request-url HTTP-Version CRLF

举例 GET /HTTP/1.1 CRLF

请求方式

GET 请求获取Request-URL所标识的资源

POST 在Request-URL所标识的资源后附加新的资源

HEAD  请求获取由Request-URL所标识的资源的响应消息报头

PUT 请求服务器存储一个资源,并用Request-URL作为其标识

DELETE请求服务器删除请求URL所标识的资源

OPTIONS 请求查询服务器的性能或者查询与资源相关的选项和需求

响应

组成格式:请求行、消息报头、请求正文

请求行

格式:HTTP-Version Status-Code Reason-Phrase CRLF

举例 HTTP/1.1 200 OK

常见CODE

200 ok

301 永久性重定向

302 临时性重定向

401 服务器收到,拒绝请求

403 没有访问权限

404 找不到页面

409 客户端没等服务器回复,直接强关了请求

500 程序错误

502 web服务器未启动啥的,网关错误

503 服务器性能瓶颈,不能处理后面的求

504 网关超时,一般都是web服务器已经找到上游,但上游一直不给回复,一般开发时都是SQL过慢,无回复

四.restful架构与其他架构的区别

1.SOAP webService

webService 是一种跨编程语言和跨操作系统平台的远程调用技术

通过HTTP协议发送请求和接收结果时采用XML格式封装,并增加一些特定的HTTP消息头,这些特定的HTTP消息头和内容格式就是SOAP协议

安全性 速度要求高,安全要求不高的场景,可用restful,

五.如何设计restful API

资源路径(URI)

比如:场景、版本号等

HTTP动词

比如:GET POST PUT DELETE等

过滤信息

如果数据很多,服务器要根据API提供的参数,过滤返回的结果,比如分页啥的

状态码

客户端有问题 401没有提供任何可验证的参数,直接拒了

错误处理

返回JSON或XML

返回结果

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值