c# - 为什么我的类似休息的路由不起作用?
问题描述
我正在 .net core 2.1 中构建一个 Web API,我希望在其中为某些实体提供类似休息的路由,如下所示。但是无论我尝试什么,我都无法使此路由正常工作。任何想法我做错了什么?
在此查询中,我想访问端点http://localhost:5000/api/ContactGroup/1/persons以获取属于 ID 为 1 的联系人组的所有人员。
[HttpPost("{groupId}/persons", Name ="GetContactGroupPersons")]
public async Task<ActionResult>GetContactGroupPersons(int groupId)
{
var returnObject = _manager.GetData(groupId);
return Ok(returnObject);
}
查询结果为 404,未找到::
Microsoft.AspNetCore.Hosting.Internal.WebHost:Information: Request starting HTTP/1.1 GET http://localhost:5000/api/ContactGroup/1/persons
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 4.2288ms 404
解决方案
您的方法被标记为,[HttpPost]
但您正在发出 GET。改成这样就好了
[HttpGet("{groupId}/persons", Name ="GetContactGroupPersons")]
推荐阅读
- angular - 当graphQl发送错误对象以及数据对象时如何获取数据对象,因为在查询中找不到某些东西
- node.js - 有没有办法使用 jimp for node js 比较两个图像
- laravel - 在 laravel 中获取 Unix 时间戳
- javascript - 子集堆积条形图
- c# - Tesseract OCR 字符串操作问题
- javascript - 在不使用字符串方法和不使用数组的情况下对整数进行排序
- python - Python:多个 for 循环
- docker - Docker ENTRYPOINT 最大字符数
- javascript - 动态键中的动态子对象
- routes - 如何使用带有查询字符串的赛普拉斯路由