Servicestack FallbackRoute无法识别尾随斜杠

时间:2017-05-23 22:27:23

标签: c# asp.net http servicestack

因此,我的代码中的ServiceStack FallbackRoute是[FallbackRoute(" / {Path *} /")],这是ServiceStack文档所说的将处理每个不匹配路由的设置。

如果给出像example.com/api这样的路线,那么它将正确触发回退响应。

但是如果给出example.com/api/,那么它只返回一个空的200 OK响应。

在正确删除斜杠后,它会处理包含内容的不匹配路由,因此example.com/api/arglkjadkf将被发送到回退

我希望Servicestack能够在基本路径之后使用尾部斜杠获取url并使其达到后备路径。

1 个答案:

答案 0 :(得分:-1)

ServiceStack不会将尾部斜杠区分为不同的路由,即:

[Route("/api")]

处理/api/api/

因此,路由定义中不应该有斜杠,因为您使用的是通配符路径,即:

[FallbackRoute("/{PathInfo*}")]
public class FallbackForUnmatchedRoutes
{
    public string PathInfo { get; set; }
}

这将处理任何尚未处理的任何深度的路线。