asp.net-mvc – 如何将数据从AuthorizeAttribute传递给Controlle
发布时间:2020-12-15 23:23:19 所属栏目:asp.Net 来源:网络整理
导读:我创建了一个自定义的AuthorizeAttribute,它验证在HTTP头中发送的一些OAuth凭据.我正在使用其中一些凭据来确定谁在提出请求.一旦我在AuthorizeAttribute中解析这些信息,是否有任何方法传递它,以便数据可以分配给Controller的实例变量?然后在我的控制器的任
我创建了一个自定义的AuthorizeAttribute,它验证在HTTP头中发送的一些OAuth凭据.我正在使用其中一些凭据来确定谁在提出请求.一旦我在AuthorizeAttribute中解析这些信息,是否有任何方法传递它,以便数据可以分配给Controller的实例变量?然后在我的控制器的任何地方,我将拥有请求方的ID.
解决方法
原来的答案
您应该可以在过滤器中执行此操作 filterContext.HttpContext.Items["test"] = "foo"; 然后这在你的行动 _yourVariable = HttpContext.Items["test"]; 你可能想使用比“测试”更独特的键,但这是想法. 编辑在动作而不是构造函数中我们有两个原因: > A Controller’s constructor fires before OnAuthorization,所以项目尚未设置. 替代解决方案 >创建一个新的OAuthController:Controller>覆盖OnAuthorization>将逻辑从您的过滤器移动到OAuthController.OnAuthorization>在OAuthController中设置一个受保护的字段(即受保护的对象myAuthData)>让您的其他控制器继承OAuthController而不是Controller>您的其他控制器可以访问myAuthData. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 使用表单验证模拟
- 会员资格,SimpleMembership,ASP.NET身份之间有什么区别?
- 用asp.net core 2.0 + EFCore.Sqlite做个小网站
- 处理ASP.NET MVC中的异步请求
- asp.net – 如何以编程方式触发dropdownlist.selectedindex
- asp.net-mvc – 为什么我得到一个“无法更新EntitySet,因为
- asp.net – jquery getJson没有将任何值传递给控制器
- asp.net-ajax – 建议使用不引人注意的AJAX与MVC 5?
- asp.net-mvc – Razor MVC模型正在丢失保存操作的数据
- asp.net中WebService 捕获全局异常
推荐文章
站长推荐
- ASP.NET MVC – 使用jQuery不显眼的验证来阻止提
- asp.net-mvc – Kendo UI饼图工具提示是否包含系
- asp.net-mvc – ASP.NET MVC Beta 1 – 哪里是Ht
- asp.net-mvc – IIS Express启用外部请求 – 503
- asp.net – 将OpenID集成到网站的注册过程中
- asp.net-mvc – 我的CRUD LINQ代码在哪里? ASP.
- asp.net-mvc – 有一种很好的方法来控制显示模板
- asp.net-mvc – 用于子操作的ASP.NET MVC路由匹配
- asp.net – WCF与WebAPI和本机移动设备
- asp.net – 如何在转发器中每行显示x个项目?
热点阅读