gpt4 book ai didi

asp.net - 使用 Nancy Whit Owin 和 WebForms

转载 作者:行者123 更新时间:2023-12-02 11:02:47 24 4
gpt4 key购买 nike

在旧的网络表单未编译的站点项目中使用nancy.Owin时,有一种从管道中esclude aspx页面的方法?

当我配置nancy回发并且请求是一个aspx页面时,回发将被删除,因为nancy删除它并调用该页面。

public void NancyConfig(IAppBuilder app)
{
app.UseNancy(options =>
{
options.Bootstrapper = new MyBootstrapper();
options.PerformPassThrough = (context => context.Response.StatusCode == HttpStatusCode.NotFound);
});

app.UseStageMarker(PipelineStage.MapHandler);
}

options.PerformPassThrough 删除回发内容并调用页面。因为不回发是可以的,但在回发详细说明中,这呈现出无限循环。

如何配置 NancyFx 以便在 passtrought 选项中不删除回发?

最佳答案

我已经修改了 nancy 官方 1.4 源代码,以从管道中排除 .aspx 和其他页面,返回请求回发而不将其删除。你可以尝试这个修改here .

  • 修改文件:Nancy/src/Nancy/Owin/NancyMiddleware.cs
  • 这里是第 82 行应用的代码:

                //Check if the webform is not present inthe path ".aspx"
    //if present move to next
    if (owinRequestPath.ToLowerInvariant().Contains(".aspx")
    || owinRequestPath.ToLowerInvariant().Contains(".asmx")
    || owinRequestPath.ToLowerInvariant().Contains(".ascx")
    || owinRequestPath.ToLowerInvariant().Contains(".ashx")
    || owinRequestPath.ToLowerInvariant().Contains(".asmx")
    || owinRequestPath.ToLowerInvariant().Contains(".asax")
    ) return next.Invoke(environment);

关于asp.net - 使用 Nancy Whit Owin 和 WebForms,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48205434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com