书接上回,上一回我们按照“低耦合高内聚”的组织架构方针对项目的整体结构进行了优化,本回将会继续编写业务,那就是用户的登录逻辑,将之前用户管理模块中添加的用户账号进行账号和密码的校验,校验通过后留存当前登录用户的信息,过程中使用图形验证码强制进行人机交互,防止账号的密码被暴力破解。登录逻辑首先在逻辑层handler包中,创建用户模块文件user.go:packagehandlerimport( "github.com/kataras/iris/v12")//用户登录模板funcUser_signin(ctxiris.Context){ ctx.View("/signin.html")}这里通过上
书接上回,上一回我们按照“低耦合高内聚”的组织架构方针对项目的整体结构进行了优化,本回将会继续编写业务,那就是用户的登录逻辑,将之前用户管理模块中添加的用户账号进行账号和密码的校验,校验通过后留存当前登录用户的信息,过程中使用图形验证码强制进行人机交互,防止账号的密码被暴力破解。登录逻辑首先在逻辑层handler包中,创建用户模块文件user.go:packagehandlerimport( "github.com/kataras/iris/v12")//用户登录模板funcUser_signin(ctxiris.Context){ ctx.View("/signin.html")}这里通过上
前言DearImGui是一个开源GUI框架。除了UI部分外,本身还支持简单的键鼠交互。目前项目内置的是V1.87版本,大概半年时间会更新一次版本,并且对源码有小幅度调整。注意:直接下载源码使用会导致19章之后的UI效果有误,修改了源码imgui_impl_dx11.cpp,需要用项目源码中的替换下载的。具体原因参考文末DirectX11WithWindowsSDK完整目录Github项目源码欢迎加入QQ群:727623616可以一起探讨DX11,以及有什么问题也可以在这里汇报。生成ImGui静态库方法一:VS建立项目在本项目的ImGui文件夹中内置了一个VS项目,你可以参考其做法,也可以直接使
前言DearImGui是一个开源GUI框架。除了UI部分外,本身还支持简单的键鼠交互。目前项目内置的是V1.87版本,大概半年时间会更新一次版本,并且对源码有小幅度调整。注意:直接下载源码使用会导致19章之后的UI效果有误,修改了源码imgui_impl_dx11.cpp,需要用项目源码中的替换下载的。具体原因参考文末DirectX11WithWindowsSDK完整目录Github项目源码欢迎加入QQ群:727623616可以一起探讨DX11,以及有什么问题也可以在这里汇报。生成ImGui静态库方法一:VS建立项目在本项目的ImGui文件夹中内置了一个VS项目,你可以参考其做法,也可以直接使
3.2.6parameters [作者:Surpassme]parameters又称参数化,通过参数化可以决定pipeline运行期的行为。pipeline主要支持两种形式的参数化parameters命令参数化和插件参数化,这里先介绍通过parameters的参数化形式,通过paramters命令参数化时,parameters仅允许放置在pipeline块中 Jenkinspipeline目前支持的参数化类型主要如下所示:string [作者:Surpassme]数据类型为字符串类型,示例如下所示:parameters{string(name:"stringParaName",defau
3.2.6parameters [作者:Surpassme]parameters又称参数化,通过参数化可以决定pipeline运行期的行为。pipeline主要支持两种形式的参数化parameters命令参数化和插件参数化,这里先介绍通过parameters的参数化形式,通过paramters命令参数化时,parameters仅允许放置在pipeline块中 Jenkinspipeline目前支持的参数化类型主要如下所示:string [作者:Surpassme]数据类型为字符串类型,示例如下所示:parameters{string(name:"stringParaName",defau
本文例子参考《STM32单片机开发实例——基于Proteus虚拟仿真与HAL/LL库》源代码:https://github.com/LanLinnet/STM32F103R6项目要求实现矩阵键盘扫描,当按下任意一个按钮时,数码管立即显示当前按下按钮对应键值。硬件设计在第一节的基础上,在Proteus中添加电路如下图所示,其中我们添加了一个排阻RX8、一个1位共阳极数码管7SEG-MPX1-CA、一组由按钮BUTTON构成的矩阵键盘。判断究竟是那个按键被按下了,有很多方法:逐行扫描、逐列扫描和行列反转扫描等。我们在此处使用行扫描法。根据电路图,我们将4X4矩阵式键盘行连接至PB0-PB3,列连接
本文例子参考《STM32单片机开发实例——基于Proteus虚拟仿真与HAL/LL库》源代码:https://github.com/LanLinnet/STM32F103R6项目要求实现矩阵键盘扫描,当按下任意一个按钮时,数码管立即显示当前按下按钮对应键值。硬件设计在第一节的基础上,在Proteus中添加电路如下图所示,其中我们添加了一个排阻RX8、一个1位共阳极数码管7SEG-MPX1-CA、一组由按钮BUTTON构成的矩阵键盘。判断究竟是那个按键被按下了,有很多方法:逐行扫描、逐列扫描和行列反转扫描等。我们在此处使用行扫描法。根据电路图,我们将4X4矩阵式键盘行连接至PB0-PB3,列连接
写在前面如果是用的公有云托管的Kubernetes集群,控制面的组件都交由云厂商托管的,那作为客户的我们就省事了,基本不用操心APIServer的运维。个人也推荐使用云厂商这个服务,毕竟Kubernetes还是有点复杂的,升级也不好搞,我们自己来维护整个集群,性价比有点低。当然,如果因为各种原因最后我们还是要维护控制面这些组件,那就要好好看看本系列接下来的几篇博客了。黑盒测试APIServer在Kubernetes架构中非常核心,是所有API的入口,APIServer也暴露了metrics数据,我们尝试获取一下:[root@tt-fc-dev01.njetcd]#ss-tlpn|grepapi
写在前面如果是用的公有云托管的Kubernetes集群,控制面的组件都交由云厂商托管的,那作为客户的我们就省事了,基本不用操心APIServer的运维。个人也推荐使用云厂商这个服务,毕竟Kubernetes还是有点复杂的,升级也不好搞,我们自己来维护整个集群,性价比有点低。当然,如果因为各种原因最后我们还是要维护控制面这些组件,那就要好好看看本系列接下来的几篇博客了。黑盒测试APIServer在Kubernetes架构中非常核心,是所有API的入口,APIServer也暴露了metrics数据,我们尝试获取一下:[root@tt-fc-dev01.njetcd]#ss-tlpn|grepapi