.Net Core Web API Post 路由端点未被命中
.Net Core Web API Post route endpoint not being hit
我定义了以下 .Net Core API 路由。
[HttpPost("/addproduct")]
[Consumes("application/json")]
public ActionResult<IEnumerable<ProductDTO>> AddProduct([FromBody] ProductDTO){}
我已经在 class 上定义了以下属性:
[EnableCors()]
[Produces("application/json")]
[Route("api/[controller]")]
我这样称呼它:https://localhost:xxxxx/api/products/addproduct
我正在向它传递一个代表 productDTO 的负载。为什么这条路线没有被击中?
问题出在 HttpPost 上使用的路由属性。
如上定义,AddProduct 操作方法匹配以下 url:
https://localhost:xxxx/addproduct
即使您使用令牌替换控制器名称,通过使用前导斜杠,您也可以覆盖 AddProduct 方法中的路由。
要正确路由到方法,请像这样删除前导斜杠:
[HttpPost("addproduct")]
[Consumes("application/json")]
public ActionResult<IEnumerable<ProductDTO>> AddProduct([FromBody] ProductDTO productDto)
有关一般属性路由或控制器路由的更多信息read this page on Microsoft Docs
我定义了以下 .Net Core API 路由。
[HttpPost("/addproduct")]
[Consumes("application/json")]
public ActionResult<IEnumerable<ProductDTO>> AddProduct([FromBody] ProductDTO){}
我已经在 class 上定义了以下属性:
[EnableCors()]
[Produces("application/json")]
[Route("api/[controller]")]
我这样称呼它:https://localhost:xxxxx/api/products/addproduct
我正在向它传递一个代表 productDTO 的负载。为什么这条路线没有被击中?
问题出在 HttpPost 上使用的路由属性。
如上定义,AddProduct 操作方法匹配以下 url:
https://localhost:xxxx/addproduct
即使您使用令牌替换控制器名称,通过使用前导斜杠,您也可以覆盖 AddProduct 方法中的路由。
要正确路由到方法,请像这样删除前导斜杠:
[HttpPost("addproduct")]
[Consumes("application/json")]
public ActionResult<IEnumerable<ProductDTO>> AddProduct([FromBody] ProductDTO productDto)
有关一般属性路由或控制器路由的更多信息read this page on Microsoft Docs