HTTP Put - Pass值在URI或正文中

本文关键字:正文 URI 值在 Put Pass HTTP | 更新日期: 2023-09-27 18:08:31

如果我想传递两个基本类型,intbool,我应该像这样在URI中传递它们吗?

[ResponseType(typeof(WriteResponse))]
[Route("Account/{clientId:int}/Client/DisableClient/{shouldDisable:bool}")]
[ResultFilter]
public IHttpActionResult PutDisableClient([FromUri]int clientId, [FromUri] bool shouldDisable)

还是从正文传递1,从URI传递1:

[ResponseType(typeof(WriteResponse))]
[Route("Account/{clientId:int}/Client/DisableClient")]
[ResultFilter]
public IHttpActionResult PutDisableClient([FromUri]int clientId, [FromBody] bool shouldDisable)

还是两者都有?

每种情况的利弊是什么?

HTTP Put - Pass值在URI或正文中

如果是"put",那么最好的做法是在body中传递值。

在URI中,您只传递过滤器值。这背后的原因是抓取你的网站的机器人只过滤数据,不修改条目只是通过抓取。