• 什么是rest?restful?


    百度百科解释:

      rest:REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

      restful:一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

     

    百度百科的解释有点专业化,但我们可以从另外一个角度,以举例的方式来阐述:

    通常的web项目的CRUD发出的url一般为

    URL 请求方式 操作

    http://localhost:8080/myweb/queryById?id=1

    或 http://localhost:8080/myweb/query?id=1

    GET 根据id查询数据

    http://localhost:8080/myweb/save

    或 http://localhost:8080/myweb/add

    POST 新增数据

    http://localhost:8080/myweb/modify

    或 http://localhost:8080/myweb/update

    POST 修改数据

    http://localhost:8080/myweb/removeById?id=1

    GET/POST 根据id删除数据

     

     

     

     

     

     

     

     

     

     

     

     

    一看之下是不是很不爽,同样的操作对应这各种不同的url,而且用到的Http 的请求方式要么是GET 要么是POST,然后实际上Http 的请求方式有八种!

    正如此,restful强调的是,一种资源(操作)在网络上对应的有且仅有一个url,而用Http 自身的请求方式来阐述要进行的操作。

     

    URL 请求方式 操作
    http://localhost:8080/myweb/query/1 GET 根据id查询数据
    http://localhost:8080/myweb/add POST 新增数据
    http://localhost:8080/myweb/modify PUT 修改数据
    http://localhost:8080/myweb/remove/1 DELETE 根据id删除数据

     

     

     

     

     

     

     

    两个表格对比之下就简单明了,restful 风格的url 中是不带“动词”的,用请求的方式来描述“动词”,这样的话GET 请求就是查询,POST 请求就是新增,PUT 请求就是修改,DELETE 请求就是删除。

    如果按照以前的话,一个查询就可以有多种url,命名不规范,不能很好的统一,这就是为什么有restful 的原因。

     

  • 相关阅读:
    html5不能播放视频的方法
    mysql找出重复数据的方法
    jquery each循环遍历完再执行的方法
    Android:TextView跑马灯-详解
    日志处理(一) log4j 入门和详解(转)
    周记 2014.11.08
    周记 2014.11.01
    linux下解压命令大全
    关于Context []startup failed due to previous errors
    周记 2014.10.25
  • 原文地址:https://www.cnblogs.com/convict/p/9939956.html
Copyright © 2020-2023  润新知