为什么在 Owin Startup class 中 auth 中间件声明的顺序很重要?
Why does the order of auth middleware declaration matter in Owin Startup class?
我阅读了一些关于在使用 Web api 时在 owin 管道中设置身份验证的示例 (1,2,3,4),这些示例声明了
身份验证中间件作为配置方法中的第一个中间件,但没有说明为什么它需要第一个。
在 问题中,作者在身份验证中间件之前附加了 webapi 中间件,然后身份验证无法正常工作。
当作者将它移到方法的顶部时,一切都按预期工作..
有谁知道为什么要在Startup Configuration方法中将认证中间件添加为第一个中间件?
OWIN 作为责任链工作。第一个中间件将首先被触发,第二个紧接着被触发,依此类推。
在开头使用身份验证中间件可以让您获得管道其余部分的用户信息。
如果将其添加到管道的中间或末尾,则在调用此中间件之前无法访问用户信息。
我阅读了一些关于在使用 Web api 时在 owin 管道中设置身份验证的示例 (1,2,3,4),这些示例声明了 身份验证中间件作为配置方法中的第一个中间件,但没有说明为什么它需要第一个。
在
有谁知道为什么要在Startup Configuration方法中将认证中间件添加为第一个中间件?
OWIN 作为责任链工作。第一个中间件将首先被触发,第二个紧接着被触发,依此类推。
在开头使用身份验证中间件可以让您获得管道其余部分的用户信息。
如果将其添加到管道的中间或末尾,则在调用此中间件之前无法访问用户信息。