美文网首页
RestFul API最佳实践

RestFul API最佳实践

作者: 陈智涛 | 来源:发表于2017-05-08 11:48 被阅读0次

    定义

    1、什么是Rest?

    REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
    目前在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。

    2、什么是RestFul API?

    • Restful是一种软件设计风格,它遵循Rest约束条件和原则。

    • RestFul API 基于Rest理论,轻量级以及通过 HTTP 直接传输数据的特性,通常来说,使用JSON描述数据,可以使用各种语言(比如 Java 程序、Perl、Ruby、Python、PHP 和 Javascript[包括 Ajax])实现客户端。

    • RestFul API基于资源,每个资源都有一个地址。资源的增删改查只是对于资源状态的改变。使用HTTP动词来操作资源,包括 HTTP GET、POST、PUT、DELETE,还可能包括 HEADER 和 OPTIONS。并且使用RestFul API每个动词都有明确的意义,不能随便使用。

    3、RestFul API实践

    3.1操作
    • POST:创建
    • PUT:更新
    • GET:查询
    • DELETE:删除
    3.2状态码,错误码,统一错误描述

    一般每个操作,都会对应一个状态码,这个状态码有框架设计,如get:200 post:201

    • 404 当前请求的页面没有找到(RestFul API资源没有找到)
    • 400 参数错误(验证层参数校验没有通过)
    • 200 一个get请求查询成功
    • 201 一个post 创建资源成功
    • 202 一个put更新资源成功(特别:在http应用中,202表示发送请求成功,服务器暂时没有处理)
    • 401 未授权
    • 403 当前资源被禁止
    • 500 服务器错误
      错误码:自定义的错误id号
      同意错误描述:错误码、错误信息、当前URL

    4、使用Token令牌来授权和身份验证

    5、开发

    参考:
    1、豆瓣API
    https://developers.douban.com/wiki/?title=api_v2
    2、

    相关文章

      网友评论

          本文标题:RestFul API最佳实践

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