• HTTP 方法


    HTTP GET

    使用GET请求仅检索资源表示/信息 - 而不是以任何方式修改它。

    找到返回200,没找到返回404,GET请求本身未正确形成返回400(客服端请求语义错误)

    HTTP GET http://www.appdomain.com/users
    HTTP GET http://www.appdomain.com/users?size=20&page=5
    HTTP GET http://www.appdomain.com/users/123
    HTTP GET http://www.appdomain.com/users/123/address
    

    HTTP POST

    POST方法用于在资源集合中创建新资源

    创建成功,并引用新资源和Location头返回201,创建成功但没有产生URI标识的资源返回200或204

    HTTP POST http://www.appdomain.com/users // 创建一个
    HTTP POST http://www.appdomain.com/users/bulk // 创建多个
    HTTP POST http://www.appdomain.com/users/123/accounts
    

    HTTP PUT

    主要使用PUT API 来更新现有资源(如果资源不存在,则API可能决定是否创建新资源)。如果创建新资源则返回201,修改则应该发送200或者204。

    HTTP PUT http://www.appdomain.com/users/123
    HTTP PUT http://www.appdomain.com/users/123/accounts/456
    

    HTTP DELETE

    用于删除资源

    删除成功返回200,操作已经在排队返回202,删除的资源已被删除(未找到)返回404,但使得DELETE方法不是幂等的,所以未找到你也可以返回200

    HTTP DELETE http://www.appdomain.com/users/123
    HTTP DELETE http://www.appdomain.com/users/123/accounts/456
    

    HTTP PATCH

    HTTP PATCH请求将对资源进行部分更新。如果您看到PUT请求也修改了资源实体以便更清楚 - PATCH方法是部分更新现有资源的正确选择,只有在您完全替换资源时才应使用PUT。

    PATCH请求不像PUT请求那样简单:

    // 获取一个资源
    HTTP GET /users/1
    
    // result
    {id: 1, username: 'admin', email: 'email@example.org'}
    
    // 更新邮箱示例
    HTTP PATCH /users/1
    
    [
    { “op”: “replace”, “path”: “/email”, “value”: “new.email@example.org” }
    ]
    
    // 根据HTTP规范,可能存在以下可能的操作
    
    [
    { "op": "test", "path": "/a/b/c", "value": "foo" },
    { "op": "remove", "path": "/a/b/c" },
    { "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] },
    { "op": "replace", "path": "/a/b/c", "value": 42 },
    { "op": "move", "from": "/a/b/c", "path": "/a/b/d" },
    { "op": "copy",	"from": "/a/b/d", "path": "/a/b/e" }
    ]
    

    安全方法

    GET和HEAD方法应仅用于检索资源表示 - 并且它们不会更新/删除服务器上的资源。据说这两种方法都被认为是“ 安全的 ”。

    幂等方法

    术语“幂等”更全面地用于描述如果执行一次或多次将产生相同结果的操作。GET,HEAD,PUT和DELETE被声明为幂等方法。

  • 相关阅读:
    【PyQt5-Qt Designer】对话框系列
    【PyQt5-Qt Designer】界面布局
    【PyQt5-Qt Designer】PyQt5+eric6 安装和配置
    【PyQt5-Qt Designer】QMessageBox 弹出框总结
    【PyQt5-Qt Designer】鼠标+键盘事件
    【PyQt5-Qt Designer】猜数字(小项目)
    【PyQt5-Qt Designer】浅谈关闭窗口
    【PyQt5-Qt Designer】窗口操作
    【python基础】利用pandas处理Excel数据
    【python基础】os.path模块常用方法详解
  • 原文地址:https://www.cnblogs.com/ajanuw/p/11355512.html
Copyright © 2020-2023  润新知