Restful
2016-12-07 09:46:01 20 举报
AI智能生成
Restful
作者其他创作
大纲/内容
Restful是什么?<br>
是一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。
用在哪里?<br>
有什么好处?<br>
面向资源
<h4>有什么优势?</h4>
有层次,接口便于理解:约定大于配置,有了统一的规范,大家在接口设计时能够保证理解的一致性,这样首先便于接口的理解
更简洁,设计上简化:同一资源URL一致,不同的CURD操作通过不同的Http协议方法进行区分,这样在设计上做到了简化
易于实现缓存:方便使用Http协议自带的缓存机制对请求进行缓存操作,这样在一定程度上又提高了请求的性能
可动态扩展服务器:每个请求都包含了服务器所需的全部信息,所以这种方式非常适用于异构系统之间的调用,同时也良好地支持分布式架构,可以动态地扩展服务器
<h4>具体如何设计?</h4>
<strong>提取资源</strong>
<strong>URI设计</strong>
将提取出来的资源提取,相应地翻译成地址,有层级的资源通过分隔符进行路径区分
<strong>具体的动作</strong>
<strong>返回结果</strong>
API的返回结果使用Json或者XML格式表示,而Json是更加常用的。因为Json相比XML更加轻量,另外Json的解析支持更广
<strong>缓存</strong>
Http协议是天然支持缓存
缓存具体的实现在Http Header里面进行设置,例如Cache-Control、Expires
<strong>安全性</strong>
在Http协议中有Authorization头可以进行相关设置
Basic方式
Digest方式
第三方的OAuth协议
HTTPS协议<br>
分支主题4
<strong>使用场景</strong>
异构系统之间的调用
分布式场景
<strong>实践示例</strong>
<strong>框架支持</strong>
0 条评论
下一页