Met*_*uru 14 asp.net-mvc controller authorize-attribute
我创建了一个自定义AuthorizeAttribute,用于验证在HTTP标头内发送的一些OAuth凭据.我正在使用其中一些凭据来确定谁在发出请求.一旦我在AuthorizeAttribute中解析这些信息,有没有办法将其传递出来,以便可以将数据分配给Controller的实例变量?然后我的控制器中的任何地方我都会有请求方的ID.
Dav*_*tka 12
原始答案
您应该可以在过滤器中执行此操作
filterContext.HttpContext.Items["test"] = "foo";
然后在你的行动中
_yourVariable = HttpContext.Items["test"];
你可能想要使用比它更独特的键"test",但这就是想法.
编辑我们在动作而不是构造函数中执行此操作有两个原因:
替代方案
OAuthController : ControllerOnAuthorizationOAuthController.OnAuthorizationprotected字段(即protected object myAuthData)OAuthControllerOAuthController而不是ControllermyAuthData.| 归档时间: | 
 | 
| 查看次数: | 4397 次 | 
| 最近记录: |