zoukankan      html  css  js  c++  java
  • 关于 Restful API 的构筑

    Restful API,大概算是用于使用 HTTP(S) 协议,与 Web 服务器交互,进行对象的增删改查的一种通信方式。

    HTTP 现在共九个方法,其中的一个被废弃(CONNECT)。

    HTTP 响应的全部内容,可以使用 curl 加 -i 或 -I 参数查看,也可以使用浏览器控制台的网络标签查看。

    使用的 HTTP 的方法:

    GET 方法,执行查询,

    POST 方法做新增,

    PATCH 方法做修改,

    DELETE 方法做删除,

    PUT 方法做全覆盖性新增或完全修改。

    URL 地址使用:

    “/资源”,

    “/资源/标识符”,

    “/资源/标识符/合集字段”,

    “/资源/标识符/合集字段/合集标识符” 的形式。

    具体 HTTP 方法的操作意义:

    对“/资源”路径, GET 方法,执行符合条件的分页查询,返回该类资源的列表;POST 方法执行“新增”;DELETE 方法执行批量删除,传入多个资源标识符。

    对“/资源/标识符”路径,GET 方法,返回指定的资源个体;PATCH 方法,对指定的资源个体修改;DELETE 方法,删除指定的资源个体。

    对“/资源/标识符/字段”路径,PATCH 方法,局部修改某个资源个体的某个字段。

    对“/资源/标识符/合集型字段”,GET 方法,复合条件分页查询返回指定的资源个体的相关联的资源;POST 方法,向指定资源个体,添加关联的资源;DELETE 方法,批量移除指定资源个体的关联关系。

    对“/资源/标识符/合集型字段/合集标识符”,DELETE 方法,移除指定合集字段的关联关系。

    返回的 HTTP 状态码:

    403 表示访问操作无权限,

    401 表示访问操作需要用户登录,即身份验证,

    404 表示访问资源类型或资源个体不存在。

    400 状态码,表示其它由于客户端问题导致的错误,例如传入参数的类型、范围验证错误。

    405 ,默认的状态,表示对该地址的请求方法不被允许。

    POST 创建操作,返回 206,表示创建完成,并携带 Location 的 HTTP Header 指明新资源的位置,即用于 GET 方法查询操作的“/资源类型/标识符”。

    HTTP 响应返回的内容格式,一般是 JSON 格式。应该也可以使用 YAML。

    网页里,表单提交只支持 GET 和 POST 方法,使用 GET 做查询操作,POST 做增删改操作,可以给 Restful API 地址追加后缀“/new”“/edit”“/delete”之类的替代。

    AJAX 和 Fetch 请求都支持五个 HTTP 方法,GET,POST,PUT,PATCH,DELETE。

    现在讲前后端分离的多,大概要求服务器内容的增删改查的 API 和前端网页地址,分开部署,到不同 URL 路径,或不同域名、子域名。

    缺个明白的图。

    现在据说 GraphQL 比 Restful API 更好,主要在非网页的客户端,有利于节省请求次数,节省总体流量。

  • 相关阅读:
    重写(Overriding)与重载(Overloading)的区别
    A Guide to setup SQL Server Reporting Services (SSRS) with Dynamics AX
    date2Str Function in Dynamics AX 2009
    浅谈程序员加薪问题(转)
    消息队列设计精要
    Redis集群模式原理探究
    SpringBoot内置tomcat原理分析
    Mybatis整体设计探究
    MapStruct 使用详解
    Zookeeper快速领导者选举原理
  • 原文地址:https://www.cnblogs.com/silvestris/p/14844444.html
Copyright © 2011-2022 走看看