码迷,mamicode.com
首页 > 其他好文 > 详细

网络协议-restful协议

时间:2019-07-05 12:42:27      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:present   let   web   inf   概念   proc   结果   ted   pack   

REST

Representational State Transfer, 是一种软件架构风格,提供一系列限制指导,用于更好的创建web service
符合REST 架构风格的web service 称为Restful web service。

其核心是以资源为关注点,而不是方法或消息, RESTful通常是用URL定位资源,HTTP动词(GET, POST, DELETE, PUT等) 描述对资源的操作,该操作过程即改变资源的表现形式,可使用JSON, XML等文件传递该资源操作信息。

 
技术图片

 

Level 3.png

 

Web端主要负责渲染和附带处理简单的商务逻辑,通过Restful API (JSON或其他格式,动词 + 名词)来传递数据和改变数据状态

对比RPC & SOAP

简要对比下RPC & REST & SOA,不同的服务器向客户端提供服务的方法

  1. RPC从一台机器(客户端)上通过参数传递的方式调用另一台机器(服务器)上的一个函数或方法(可以统称为服务)并得到返回的结果。
  2. SOAP 简单对象访问协议,是一种协议,规定以XML格式传输。
  3. REST 针对各Client,提供了一套统一面向资源状态操作的接口规范。

SOAP和REST严格来说不是两个对等的概念,可理解为两种服务设计思想和及其具体的实现架构。

二者各有自己的使用场景。如果创建的分布式服务要求较好的安全性,对于传输等底层实现要求较强的可定制性,可以考虑SOAP;如果要求设计实现简单,一般来说安全性要求不高可以考虑REST。这只是一般情况,但偏于面向资源的服务使用REST有天然的优势。

SOAP在.NET中多使用WCF框架,而RESTful则多使用Web API。
具体可参考Microsoft技术杂志文章

Restful API
 
技术图片

 


 

REST API.png
GET /products : will return the list of all products
POST /products : will add a product to the collection
GET /products/4 : will retrieve product #4
PATCH/PUT /products/4 : will update product #4
  1. 其中GET和HEAD方法不能设计可对资源状态进行改变
  2. Resource推荐使用复数,其地址推荐使用嵌套结构
  3. 使用正确的HTTP Status Code表示访问状态。
  4. 返回结果使用简明string, 适当注释。

Restful 的好处,无需关注不同的Client等


 
技术图片
Restful.png

 

网络协议-restful协议

标签:present   let   web   inf   概念   proc   结果   ted   pack   

原文地址:https://www.cnblogs.com/binghuaZhang/p/11137494.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!