欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp.net core中遇到需要自定义数据包解密方法的时候

程序员文章站 2022-03-13 11:00:36
最近将公司的项目用.netcore重写, 服务的http外部接口部分收发消息是DES加解密的, 那么在asp.net core mvc的action处理之前需要加入解密这个步骤. 我第一想到的是用filter的方法来做, 找到了ActionFilter, 重写了OnActionExecuting方法 ......

最近将公司的项目用.netcore重写, 服务的http外部接口部分收发消息是DES加解密的, 那么在asp.net core mvc的action处理之前需要加入解密这个步骤. 

我第一想到的是用filter的方法来做, 找到了ActionFilter, 重写了OnActionExecuting方法, 确实成功在action执行前拦截了下来, 但是request却是只读的.

这其实可以理解, 因为mvc已经做好了request的form\querystring之类的读取, 再做修改肯定不合适. 

那么只能在每个action函数第一行加一个解密方法的调用了吗?

等等, 这有点像mvc的model binding.

于是我查看了asp.net core mvc 自定义model binding的方法, 重写之后, 在action的函数参数声明处使用自定义的model即可.

相关链接:

https://docs.microsoft.com/en-us/aspnet/core/mvc/advanced/custom-model-binding