美文网首页
REST及REST风格的web服

REST及REST风格的web服

作者: jiegiser | 来源:发表于2019-06-19 14:36 被阅读0次

    1.前言:

    REST是由Roy Fielding提出的一种软件架构,现如今也是因为REST模式的web服务与复杂的SOAP、XML-RPC对比来说,

    更加简洁,越来越多的web服务开始采用REST风格设计和实现。

    简单的说REST就是URL定位资源,用HTTP动词(get,post,delete,detc)描述操作,REST描述的是在网络中
    C/S的一种交互形式,我们一般所说的,并不是指的它本身,它本身没有什么实用之处,而是如何设计
    RESTful API,也就是如何设计REST风格的网络接口。

    2.REST中的基本概念

    • 在REST中的一切都被认为是一种资源,每个资源由url标识。
    • 对资源的操作包括获取、创建、修改和删除资源,这些操作正好对应http协议提供的get、post、put、和delete方法
      ,也就是说使用统一的接口,而不像soap风格的服务那样,每个服务的名称都是不同的。
    • 每个请求都是一个独立的请求,从客户端到服务器的每个请求都必须包含所有必要的信息,便于理解。
    • 资源表现形式则是JSON,xml、或者HTML,取决于读者是机器还是人,是消费web服务的客户软件合适web
      浏览器。当然也看可以是任何其他的格式。

    3. REST架构风格的约束

    最重要的约束包括如下6个方面

    • C/S:通信只能由客户端单方面发起,表现为请求/响应的形式
    • 无状态:通信的会话状态应该全部由客户端负责维护。
    • 缓存:响应内容可以在通信链的某处被缓存,以改善网络效率。
    • 统一接口:通信链的组件之间通过统一的接口互相通信,以提高交互的可见性。
    • 分层系统:通过限制组建的行为(即每个组件只能“看到”与其交互的紧邻层),将架构分解为若干等级的层。
    • 按需代码:支持通过下载并执行一些代码,对客户端的功能进行扩展。

    4.REST风格的web服务

    REST风格的web服务(也称为REST风格的web API)是一个使用http并遵循REST原则的web服务,他从以下三个方面进行定义:

    • URI,例如:http://example.com/resources
    • web服务接受与返回的互联网媒类型,例如:JSON、xml、yaml等
    • web服务在该资源上所支持的一系列请求方法(例如POST、get、put、delete)
    下面的表格列出了在实现REST风格的web服务时http请求方法的典型用途:

    webgis从基础到开发实践。

    相关文章

      网友评论

          本文标题:REST及REST风格的web服

          本文链接:https://www.haomeiwen.com/subject/uhhkqctx.html