为什么我的.Net Core MVC服务为不存在的路由返回200秒?

时间:2017-03-16 20:29:22

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

我有一个.net核心MVC Web API项目(或者现在在.net核心中调用的任何内容)。我有一个消息控制器:

[Route("api/[controller]")
public class MessageController
{
    Public MessageController()
    {}

    // This works
    [HttpGet]
    public IMessage Get()
    {
        // Do stuff to get a Message
        return Message;
    }
}

当我像这样调用Get端点时:

GET => http://MyService/api/Message/

我将预期的消息对象作为JSON和HTTP 200返回。

但是,当我调用一个不存在的端点时:

GET => http://MyService/api/Message/Foo

我回来了空json []和HTTP 200.

显然,路由中的某些内容匹配每条路线并返回200而不是仅匹配实际路线并返回404不匹配的任何路线。那么默认路由在哪里捕获所有定义的内容以及如何杀死它?

0 个答案:

没有答案