首页 > 解决方案 > 没有 URI 参数的 API POST 的自定义 http 路由

问题描述

我有一个没有标头 URI 参数的 http 帖子,在图片中你可以看到 API 在此处输入图像描述

当我调用它时,我得到了错误

未找到与请求 URI 匹配的 HTTP 资源

我正在尝试在配置文件中添加自定义路由

 config.Routes.MapHttpRoute(
           name: "ApiByAction",
           routeTemplate: "api/{controller}/{action}",
           defaults: null,
           constraints: new { action = "accettaTickets" }
            );

因为默认需要一个URI参数

config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

但我得到同样的错误。你能帮助我吗?

谢谢!

标签: asp.net-web-apiroutinghttprequesturi

解决方案


我想您没有针对此 URL 具有适当操作方法的控制器。尝试使用默认路由配置添加此类控制器。

public class WATicketController : ApiController
{
    public IEnumerable<string> accettaTickets()
    {
        return new string[] { "value1", "value2" };
    }
}

推荐阅读