代码之家  ›  专栏  ›  技术社区  ›  mylvgth

ServiceStack Razor响应筛选器

  •  1
  • mylvgth  · 技术社区  · 6 年前

    我编写了一个名为“default”的ServiceStack Razor页面。cshtml'。我想在它运行时添加一个全局响应过滤器,但它不能正常工作。如何修复?

    enter image description here

        private static void AddFilters(IAppHost appHost)
        {
            appHost.GlobalResponseFilters.Add((req, res, dto) =>
            {
               res.AddHeader("X-Powered-By", "mylvgth");
             });
         }
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   mythz    6 年前

    GlobalResponseFilter用于填充请求DTO并由服务执行的请求。对于其他请求,可以使用在请求开始时执行的PreRequestFilters。

    Razor页面没有响应过滤器,因为您不能在请求已经写入响应之后向请求添加头,只有“查看页面”才会首先调用服务,在呈现页面之前执行响应过滤器。