经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » ASP.net » 查看文章
Net Core 自定义 Middleware 加密解密
来源:cnblogs  作者:一直踩坑的码农  时间:2019/9/17 11:27:23  对本文有异议

前言:第一次写文章,有问题请轻喷

当前使用 Net Core 版本 2.1.3

我们经常在开发中需要把实体的主键 Id 传输到前端,但是在Get的时候又不想让前端能看到明文,我们通常会加密这些数据,所以有了这篇文章来写一些心得。(主要是我在网上找的代码写得太简单了,不符合我的需求)

这里我用的是 Net Core 自带的 DataProtector ,使用方式自行百度一下

关于中间件 Middleware 可以看看博园大佬写的,太多就不列举了,官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/middleware/index?view=aspnetcore-2.2

一张图来概括就是这样:

 

 

 

第一步,过滤请求(Request):

 


处理 Request 主体部分

要注意这里 newResponse 是没有 Dispose 的,本来是用的双重 using ,但是感觉嵌套太多,个人编码风格,可以自行选择


FilterRequest 主体部分

目前只做了 Get 和 Post 其他 Method 可自行添加。目前只是匹配参数中,字段名以 Id 结尾的字段进行筛选,可以自己做扩展,自定义特性和反射去做也是可以的,更加灵活,

不过要牺牲一点点性能,看你怎么取舍了和你的需求了,这里只是做一次Demo。

 


最后是 Response 过滤部分

因为 Response 都是一样过滤,所以比较简单。

整体执行流程图

 

写在最后:整个项目就不发上去了,帮朋友写的一个小玩意,这个类文件我发布到百度网盘把。

链接: https://pan.baidu.com/s/1m72tHkw8zAzYYpWO0Yw2FQ 提取码: r3qh 

 

原文链接:http://www.cnblogs.com/luciusliang/p/11526225.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号