Net Core 自定义 Middleware 加密解密
2024-08-29 07:31:19
前言:第一次写文章,有问题请轻喷
当前使用 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
最新文章
- pycharm 调试 django 应用
- hibernate3连oracle的各种坑。。
- java开发命名规范(转载)
- AssetManager asset的使用
- 动态SQL使用小结
- 【原】web服务器占有量统计等 web网站
- mysql学习(十一)嵌套查询 排序 分组
- TCP、UDP和HTTP
- ocp认证考试指南第一章
- python之HTMLParser解析HTML文档
- 与其争论java和.net的差别,还不如多想点用编程技术挣钱的方式
- 关于GitHub中文乱码的问题
- .net 手机滑动加载
- How to use Junit Listener
- 三个解释——MVC的网址
- CSS-表格特有属性和定位
- sopt:一个简单的python最优化库
- bzoj5210最大连通子块和
- JS格式化数字保留两位小数点示例代码
- HDU 1717 小数化分数2(最大公约数)
热门文章
- 声源定位之2精读《sound localization based on phase difference enhancement using deep neuarl networks》
- JCR分区 | 中科院SCI期刊分区表
- vue-cli安装webpack项目及初始配置
- Mybatis报错:org.apache.ibatis.builder.IncompleteElementException
- mac软件安装 for Mac
- vue-cli3用图形化的方式创建项目
- Zabbix使用第三方API短信报警
- WINGIDE 激活失败
- [UE4] TSharedPtr, TWeakObjectPtr and TUniquePtr
- 深入理解虚拟机、容器和 Hyper 技术