c# – OWIN发送多个路由的静态文件

前端之家收集整理的这篇文章主要介绍了c# – OWIN发送多个路由的静态文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在做一个坐在ASP.Net WebAPI顶端的SPA.我正在等待使用 HTML5历史记录,而不是使用#/进行历史路由,但是对于深层链接来说,这是一个问题,我需要确保/和/ foo / bar都返回相同的HTML文件(我的JS将呈现正确的部分的SPA).

如何让OWIN / Katana为多个不同的网址返回相同的HTML文件

解决方法

为了使事情变得简单,同时仍然保持StaticFiles中间件的所有缓存良好性,我只需使用内联中间件重写请求路径,就像这样
public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        app.Map("/app",spa =>
        {
            spa.Use((context,next) =>
            {
                context.Request.Path = new PathString("/index.html");

                return next();
            });

            spa.UseStaticFiles();
        });

        app.UseWelcomePage();
    }
}

除了/ app / *之外,这将提供欢迎页面,它将始终为index.html提供服务.

猜你在找的C#相关文章