CSRF和token以及用django实现

csrf CSRF(Cross-Site Request Forgery,跨站点伪造请求)是一种网络攻击方式,该攻击可以在受害者毫不知情的情况下以受害者名义伪造请求发送给受攻击站点,从而在未授权的情况下执行在权限保护之下的操作,具有很大的危害性。具体来讲,可以这样理解CSRF攻击:攻击者盗用了你的身 ...

CELL函数怎么提取工作表名称

CELL函数怎么提取工作表名称,之前文章中,述了目录的做法。但,有朋友问,如果不做成目录的形式,而是只提取工作表的名称,有什么方法? 今天就一个提取工作表名称的函数——CELL。 公式实现 如果想提取的工作表名称带有完整的路径与所在工作簿,...

Mac M1 安装 Nacos 操作及问题解决

nacos 依赖 mysql 先安装mysql ,这里使用的是8+版本,原因在于原本的 5.7 版本中并没有对 m1 的良好支持,如果启动会有报错说查询不到对应版本信息(虽然可以通过自定义 mirror 实现) mysql 配置参考(docker-compose): mysql: image: my ...

避坑!SimpleDateFormat不光线程不安全,还有这个隐患

众所周知,SimpleDateFormat是多线程不安全的 下面这段代码通过多线程使用同一个SimpleDateFormat对象的parse方法, 多次执行代码来测试,可以看到会出现两种预想不到的现象 >要么出现不正确的时间解析结果,要么抛出message各异的NumberFormatExcepti ...

驱动开发:通过Async反向与内核通信

在前几篇文章中给大家具体解释了驱动与应用层之间正向通信的一些经典案例,本章将继续学习驱动通信,不过这次我们学习的是通过运用`Async`异步模式实现的反向通信,反向通信机制在开发中时常被用到,例如一个杀毒软件如果监控到有异常进程运行或有异常注册表被改写后,该驱动需要主动的通知应用层进程让其知道,这就... ...

通过宏封装实现std::format编译期检查参数数量是否一致

背景 std::format在传参数量少于格式串所需参数数量时,会抛出异常。而在大部分的应用场景下,参数数量不一致提供编译报错更加合适,可以促进我们更早发现问题并进行改正。 最终效果 // 测试输出接口。 template <typename... T> void Print(const std:: ...

在联调form表单数据时,如何传递参数为formData格式

有时候在前后端联调接口时,后端会要求传递入参为formData格式如下图 入参要求是传递fromData格式 + 当前时间戳,具体实现如下 首先先模拟一个普通接口 const getGroupData = (data) => { return request({ url: 'rest/report/ ...

el-form 每行显示两列,底部按钮居中

需求: el-form 每行显示两列,底部按钮居中 问题: 以前的解决办法是: el-col, el-row。但是这里只有一个 el-form-item 的 label 数据是已知的,其余项都是循环得到的,数量不固定,因此不能采用 el-col 方式。 尝试 尝试过 item 左浮动,flex,底部 ...