【问题标题】:Web API controller with custom name trigger error具有自定义名称触发错误的 Web API 控制器
【发布时间】:2020-08-20 00:06:57
【问题描述】:

您好,我是 Web API 的初学者。所以我创建了一个这样的简单函数测试。

  [HttpGet]
    public ActionResult<IEnumerable<string>> Get()
    {
        return new string[] { "value1", "value2" };
    }
    [HttpGet]
    [Route("api/[controller]/test")]
    public string[] test()
    {
        return new string[] { "test1","test2" };
    }

在这里,我创建了一个带有路由规范的自定义方法测试。但是当我尝试 https://localhost:44389/api/values/test 时,它会显示 {"errors":{"id":["The value 'test' is not valid."]},"title":"One or more validation errors occurred.","status":400,"traceId":"8000001f-0002-e900-b63f-84710c7967bb"}

请告诉我如何解决这个问题。

【问题讨论】:

    标签: asp.net-core asp.net-web-api asp.net-core-webapi


    【解决方案1】:

    如果要忽略控制器上的路由,则需要使用斜杠前缀:

    [Route("/api/[controller]/test")]
    

    否则您的路线将类似于/api/values/api/values/test

    【讨论】:

      猜你喜欢
      • 2012-09-15
      • 1970-01-01
      • 2017-05-08
      • 1970-01-01
      • 1970-01-01
      • 2017-04-22
      • 2016-05-03
      • 2018-09-21
      • 1970-01-01
      相关资源
      最近更新 更多