zoukankan      html  css  js  c++  java
  • REST接口

    什么是REST风格的接口:

    就是用URL定位资源,用HTTP描述操作。也就是:URL定位资源,用HTTP动词(GET,POST,DELETE,PUT)描述操作

    在设计web接口的时候,REST主要是用于定义接口名,接口名一般是用名次写,不用动词,那怎么表达“获取”或者“删除”或者“更新”这样的操作呢——用请求类型来区分。

    比如,我们有一个friends接口,对于“朋友”我们有增删改查四种操作,怎么定义REST接口?

    增加一个朋友,uri: generalcode.cn/v1/friends 接口类型:POST

    删除一个朋友,uri: generalcode.cn/va/friends 接口类型:DELETE

    修改一个朋友,uri: generalcode.cn/va/friends 接口类型:PUT

    查找朋友,uri: generalcode.cn/va/friends 接口类型:GET

    上面我们定义的四个接口就是符合REST协议的,请注意,这几个接口都没有动词,只有名词friends,都是通过Http请求的接口类型来判断是什么业务操作。

    举个反例:generalcode.cn/va/deleteFriends 该接口用来表示删除朋友,这就是不符合REST协议的接口。

    一般接口的返回值是JSON或者XML类型的,笔者在互联网的工作经验一般都是JSON类型的。

    用HTTP Status Code传递Server的状态信息。比如最常用的 200 表示成功,500 表示Server内部错误,403表示Bad Request等。(反例:传统web开发返回的状态码一律都是200,其实不可取。)

    那这种风格的接口有什么好处呢?前后端分离。前端拿到数据只负责展示和渲染,不对数据做任何处理。后端处理数据并以JSON格式传输出去,定义这样一套统一的接口,在web,ios,android三端都可以用相同的接口,是不是很爽?!

    参考博客:https://www.cnblogs.com/Sandy-1128/p/REST-SANDY-0413.html

  • 相关阅读:
    用内联取代宏代码
    参数的缺省值
    令人迷惑的隐藏规则
    重载与覆盖
    重载是如何实现的?
    重载的起源
    C++函数的高级特性
    使用调试器逐步跟踪程序
    new/delete 的使用要点
    malloc/free 的使用要点
  • 原文地址:https://www.cnblogs.com/yuange678/p/11624870.html
Copyright © 2011-2022 走看看