2021 10-19

FastAPI 学习之路(二十七)安全校验

        你写API接口肯定你是希望是有权限的人才能访问,没有权限的人是不能访问的,那么我们应该如何去处理呢,我们可以用的验证方式有很多,我们这次分享的是用:OAuth2来认证。那么我们看下,需要怎么才能实现呢。我们现在的接口有一部分需要用OAuth2认证后才可以访问,另一部分可以随便去访问的,那么我们看下,我们应该如何去实现。        

2021 10-19

HCNP Routing&Switching之BGP报文结构、类型和状态

  前文我们了解了BGP的邻居建立条件、优化以及BGP认证相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15395723.html;今天我们来聊一聊BGP报文结构、类型和状态相关话题;   BGP报文结构和类型   提示:BGP工作在应用层,其端口号为179;报文结构是7层封装,BGP报文主要由两种报文头部组成,公共头部和类型头部;公共头部主要用来描述bgpAS号,包头长度,报文类型,版本信息等等信息,类型头部主要用来描述不同类型的BGP报文相

2021 10-19

IP包头结构

版本号(Version): 长度4比特。标识目前采用的IP协议的版本号。一般的值为0100(IPv4),0110(IPv6) IP包头长度(HeaderLength): 长度4比特。这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。 该部分占4个bit位,单位为32bit(4个字节),即本区域值=IP头部长度(单位为bit)/(8*4), 因此,一个IP包头的长度最长为“1111”,即15*4=60个字节。IP包头最小长度为20字节。 服务类型(TypeofServ

2021 10-18

MyBatis原生批量插入的坑与解决方案!

前面的文章咱们讲了MyBatis批量插入的3种方法:循环单次插入、MyBatisPlus批量插入、MyBatis原生批量插入,详情请点击《MyBatis批量插入数据的3种方法!》。​ 但之前的文章也有不完美之处,原因在于:使用「循环单次插入」的性能太低,使用「MyBatisPlus批量插入」性能还行,但要额外的引入MyBatisPlus框架,使用「MyBatis原生批量插入」性能最好,但在插入大量数据时会导致程序报错,那么,今天咱们就会提供一个更优的解决方案。 原生批量插入的“坑” 首先,我们来

2021 10-18

❤️【Python从入门到精通】(二十七)更进一步的了解Pillow吧!

您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦。进一步介绍Pillow库的使用,详细了解干货满满,建议收藏,需要用到时常看看。小伙伴们如有问题及需要,欢迎踊跃留言哦~~~。 前言 本文是接上一篇❤️【Python从入门到精通】(二十六)用Python的PIL库(Pillow)处理图像真的得心应手❤️进一步介绍Pillow库的使用,本文将重点介绍一些高级特性:比如如何利用Pillow画图形(圆形,正方形),介绍通过Pillow库给图片添加水印;同时对上一篇文章未介绍的常用知识点进行补充说明

2021 10-18

一次简单的SQL注入绕WAF

本人也是小白一枚,大佬请绕过,这个其实是六月份的时候做的,那时候想多点实战经验,就直接用谷歌搜索找了一些网站,这个是其中一个 1、目标网站   2、发现有WAF防护     3、判断存在注入      4、猜测了一下闭合为",果真是"闭合,而且没有触发WAF,感觉还挺幸运的      5、尝试使用orderby判断当前数据库的字段数为20,本来以为WAF会拦截,发现也没有拦截   &nb

2021 10-18

消息队列那么多,为什么建议深入了解下RabbitMQ?

你为啥要在项目中选择xxx消息中间件? 提起消息队列,也许你的脑海里会不自觉地蹦出好多概念:JMS、Kafka、RocketMQ、AMQP、RabbitMQ、ActiveMQ、Pulsar、RedisStream...如果你的项目中恰好用到了其中的一个消息中间件,那么你出去面试或者与同事交流技术的时候,对方很大概率会问你:为啥要选择xxx消息中间件? 如果你刚好只了解你正在用的消息中间件,那么你只能回答:因为只会xxx... 不...这绝对不是你想要的结局!在对方准备看你的笑话之前,你也

2021 10-18

MyBatis 中实现SQL语句中in的操作 (11)

MyBatis中实现SQL语句中in的操作 概括:应用myBatis实现SQL查询中IN的操作 1、数据库结构及其数据    2、mapper.xml文件 <?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPEmapper PUBLIC"-//mybatis.org//DTDMapper3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <map

2021 10-18

数据服务基础能力之元数据管理

一、业务背景 1、应用场景 在多变的数据服务场景中,应用中常见如下的业务需求,通过对多种数据结构的灵活组合,快速实现业务模型构建,整体示意图如下: 像常用的画图工具,左边提供基础图形库,中间是画布,右边是组件的控制细节,对比到这里的逻辑如下: 字段面板:提供业务数据结构的字段映射,和常规字段类型配置,用来支撑组合面板的表单配置。 数据结构:对现有业务结构做映射,可能是文件、数据表、JSON等,生成相对标准的字段选项; 拓补字段:维护一批基础的字段类型,用来做拓补操作,完善整个业务结构;

2021 10-18

从 MVC 到使用 ASP.NET Core 6.0 的最小 API

从MVC到使用ASP.NETCore6.0的最小API https://benfoster.io/blog/mvc-to-minimal-apis-aspnet-6/ 2007年,随着ASP.NETMVC引入了其他语言中变得司空见惯的模型-视图-控制器模式,并为其提供原生支持,.NETWeb应用程序开发有了极速的发展。 2012年,也许是由于ReSTfulAPI的日益流行,借鉴了ASP.NETMVC的许多概念又引入了ASP.NETWebAPI,这是对WCF的重大改进,使开发人员能够以更少的仪式构