我正在关注这篇文章来验证我正在编写的 Web API 服务的用户:
http://codebetter.com/johnvpetersen/2012/04/02/making-your-asp-net-web-apis-secure/
这工作得很好。
总之,我们使用自定义操作过滤器(适用于所有请求),检查加密的请求标头以确定用户是谁。
但是,我的控制器操作方法中也有需要知道当前用户是谁的代码。与其重复在 ActionFilter 中执行的逻辑,有没有办法可以在操作过滤器中设置一个变量并在控制器操作方法中引用它?
我还看到它建议应该使用 MessageHandler 而不是 actionFilter。这会在某种程度上有所帮助吗?
本质上,我需要以某种方式在过滤器代码中标记当前用户是谁,并能够在我的控制器中引用它
还是我离这儿很远?有更聪明的方法吗?谢谢