除了GET方法,新的HTTP QUERY方法规范发布

近日IETF提交新规范讨论:定义了一种新的 HTTP 方法QUERY,QUERY方法作为一种安全、幂等的请求方法,可以携带请求内容。
大多数情况下,当请求中传送的数据量太大而无法编码到请求的 URI 中时,推荐采取QUERY方式。
例如,虽然这是一个常见且可互操作的查询:

GET /feed?q=foo&limit=10&sort=-published HTTP/1.1

如果查询参数扩展到几千字节或更多的数据,它可能不会正常运行,因为许多实现都限制了它们的大小。通常,这些限制是无法提前知道或发现的,因为请求可能会通过许多不协调的系统。此外,在目标 URI 中表达一些数据是低效的,因为它需要被编码为一个有效的 URI。
因此,很多使用HTTP POST 方法作为使用 GET 的替代方法来执行查询,这种变体与 GET 具有相同的基本限制。

POST /feed HTTP/1.1
Host: example.org
Content-Type: application/x-www-form-urlencoded

q=foo&limit=10&sort=-published

QUERY 方法提供了一种解决方案,它跨越了使用 GET 和 POST 之间的差距。与 POST 一样,查询操作的输入在请求的有效负载内传递,而不是作为请求 URI 的一部分。然而,与 POST 不同的是,该方法是明确安全和幂等的,允许缓存和自动重试等功能运行。

“Accept-Query”响应头域可以被服务器用来直接表示对 QUERY 方法的支持,同时标识可以使用的特定查询格式媒体类型。

注:Query = 带有一堆body内容的GET
幂等性= QUERY 请求不会改变目标资源的状态
详细点击标题

相关推荐

  1. 除了GET方法HTTP QUERY方法规范发布

    2024-05-12 22:28:15       13 阅读
  2. 后台发送GET/POST方法

    2024-05-12 22:28:15       16 阅读
  3. C#后台发送Get和Post请求几种方法总结

    2024-05-12 22:28:15       36 阅读
  4. 封装PHP用于发送GET和POST请求公共方法

    2024-05-12 22:28:15       10 阅读
  5. git 常用使用方法

    2024-05-12 22:28:15       40 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-12 22:28:15       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-12 22:28:15       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-12 22:28:15       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-12 22:28:15       20 阅读

热门阅读

  1. OpenCV 阈值法

    2024-05-12 22:28:15       13 阅读
  2. 使用openssl生成自签名证书

    2024-05-12 22:28:15       15 阅读
  3. MySQL千万级数据从190秒优化到1秒全过程

    2024-05-12 22:28:15       10 阅读
  4. Oracle数据库之基本查询详解(三)

    2024-05-12 22:28:15       15 阅读