一文搞懂RESTful开辟

打印 上一主题 下一主题

主题 887|帖子 887|积分 2661


  • REST(Representational State Transfer),表现形式状态转换,它是一种软件架构风格
    当我们想表示一个网络资源的时候,可以利用两种方式:

    • 传统风格资源形貌形式

      • http://localhost/user/getById?id=1 查询id为1的用户信息
      • http://localhost/user/saveUser 保存用户信息

    • REST风格形貌形式

      • http://localhost/user/1
      • http://localhost/user


传统方式一般是一个请求url对应一种操作,如许做不仅麻烦,也不安全,由于会程序的人读取了你的请求url地址,就大概知道该url实现的是一个什么样的操作。
查看REST风格的形貌,你会发现请求地址变的简朴了,并且光看请求URL并不是很能猜出来该URL的详细功能
所以REST的优点有:

  • 潜伏资源的访问举动,无法通过地址得知对资源是何种操作
  • 书写简化
但是我们的问题也随之而来了,一个相同的url地址即可以是新增也可以是修改或者查询,那么到底我们该怎样区分该请求到底是什么操作呢?

  • 按照REST风格访问资源时利用举动动作区分对资源进行了何种操作

    • http://localhost/users 查询全部用户信息 GET(查询)
    • http://localhost/users/1 查询指定用户信息 GET(查询)
    • http://localhost/users 添加用户信息 POST(新增/保存)
    • http://localhost/users 修改用户信息 PUT(修改/更新)
    • http://localhost/users/1 删除用户信息 DELETE(删除)

请求的方式比较多,但是比较常用的就4种,分别是GET,POST,PUT,DELETE。
按照不同的请求方式代表不同的操作类型。

  • 发送GET请求是用来做查询
  • 发送POST请求是用来做新增
  • 发送PUT请求是用来做修改
  • 发送DELETE请求是用来做删除
但是注意:

  • 上述举动是约定方式,约定不是规范,可以打破,所以称REST风格,而不是REST规范

    • REST提供了对应的架构方式,按照这种架构设计项目可以降低开辟的复杂性,进步体系的可伸缩性
    • REST中规定GET/POST/PUT/DELETE针对的是查询/新增/修改/删除,但是我们假如非要用GET请求做删除,这点在程序上运行是可以实现的
    • 但是假如绝大多数人都遵循这种风格,你写的代码让别人读起来就有点莫名其妙了。

  • 形貌模块的名称通常利用复数,也就是加s的格式形貌,表示此类资源,而非单个资源,例如:users、books、accounts......
清楚了什么是REST风格后,我们后期会常常提到一个概念叫RESTful,那什么又是RESTful呢?

  • 根据REST风格对资源进行访问称为RESTful。
后期我们在进行开辟的过程中,大多是都是遵从REST风格来访问我们的后台服务,所以可以说咱们以后都是基于RESTful来进行开辟的。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

南飓风

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表