在旧的Web表单站点项目中,使用esclude
可以从管道中获取nancy.Owin
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 official 1.4的源代码,使其从管道中避开.aspx和其他页面,返回请求回发,将其删除。
您可以尝试此修改here。
//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/