在nodej.js/express中基于过滤对象获取数据时,是否适合使用POST请求而不是GET请求?



是否适合在node.js/express中使用POST请求,当尝试基于一个过滤对象从mysql数据库中获取数据时,可能看起来像这样:

filter = {
createdBefore:"2022-12-10",
maximumSize:"10",
minimumSize:"2",
contains:[{productId:"1", quantity:"100"}, {productId:"2", quantity:"200"}, {productId:"3", quantity:"300"}]
}

现在这只是一个虚拟数据,它没有实际用途-我提供它是为了帮助可视化我所说的"过滤对象"的含义。所以,在这种情况下是可以使用POST方法并将其传递到body内部,还是应该使用带有查询参数的GET方法。

FromW3C文档:

使用GET if:交互更像是一个问题(即,它是一个安全的操作,如查询、读取操作或查找)。使用POST如果:交互作用更像是一个命令,或者交互以用户可以感知的方式(例如,对服务的订阅)改变资源的状态用户应该对交互的结果负责。

整个文档是">uri,可寻址性和HTTP GET和POST的使用",可以在这里找到

p。附注:GET请求可以有它们的body

相关内容

  • 没有找到相关文章

最新更新