【发布时间】:2018-10-26 06:02:43
【问题描述】:
我有以下 Web API 控制器。它的唯一职责是根据一组业务规则验证传入的文档并返回结果。哪个是用于此控制器操作的正确 HTTP 动词?
//[Http<???>]
public IActionResult ValidateBusinessRules([FromBody BusinessDocument document)
{
var result = ValidateBusinessRules(document);
return Ok(result);
}
【问题讨论】:
-
我认为 BedRequest (401) 是最好的——当出现问题时。但另一方面,我认为它不是 RESTfull 终结点。在我看来,最好的方法是在一开始就通过验证和一定的业务逻辑(在验证通过后执行)来准备端点
-
FromBody适用于 POST 或 PUT -
@mirt 我的问题是使用哪个 HTTP 动词,即 GET、POST、PUT 等。我还需要返回一个对象,其中包含每个结构相当复杂的验证规则的结果。不能只返回返回 BadRequest
-
@ErshadNozari,你也可以用一个对象返回 BedRequest。
-
@ErshadNozari 您是否使用此方法来验证表单中的数据,如果有效,您是否使用另一个端点保存数据?
标签: rest asp.net-web-api asp.net-web-api2 asp.net-core-webapi