目录

Life in Flow

知不知,尚矣;不知知,病矣。
不知不知,殆矣。

存档: 2023 年 02 月 (8)

人脸识容器&MQ

在 docker 中安装人脸识别镜像 上传镜像 face.tar.gz 1[root@localhost tmp]# docker load < face.tar.gz 2[root@localhost tmp]# docker images 创建 docker 容器 解压 demo.tar 1[root@localhost tmp]# tar -xvf demo.tar 2[root@localhost tmp]# docker run -d -it -p 3000:3000 -v /tmp/demo:/demo --name node face 3 4 5[root@localhost tmp]# docker ps 6CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 70ef91128ee5c face "bash" 47 seconds ago Up 46 seconds 0.0.0.0:3000->3000/tcp node 运行人脸识别程序 1### 进入容器 2[root@localhost t....

uni-app

uni-app  uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到 iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。  DCloud 公司拥有 900 万开发者、数百万应用、12 亿手机端月活用户、数千款 uni-app 插件、70+ 微信/qq 群。阿里小程序工具官方内置 uni-app(详见),腾讯课堂官方为 uni-app 录制培训课程(详见),开发者可以放心选择。  uni-app 在手,做啥都不愁。即使不跨端,uni-app 也是更好的小程序开发框架(详见)、更好的 App 跨平台框架、更方便的 H5 开发框架。不管领导安排什么样的项目,你都可以快速交付,不需要转换开发思维、不需要更改开发习惯。 看视频,10 分钟了解 uni-app 为什么要选择 uni-app?  uni-app 在开发者数量、案例、跨端抹平度、扩展灵活性、性能体验、周边生态、学习成本、开发成本等 8 大关键指标上拥有更强的优势。 功能框架图  一套代码编到 14 个平台....

微信开发者账号

申请微信开发者账号  虽然开发微信小程序可以使用工具提供的测试号,但是测试号提供的功能极为有限,而且使用测试号开发的微信小程序不能上架发布。因此,想要开发一个可以上架的微信小程序,首先必须要申请微信开发者账号。个人申请和使用微信开发者账号是免费的。如果要开发的是商用小程序,那么就需要以企业身份申请微信开发者账号,而且还要缴纳认证费用。 在线办公小程序  在线办公小程序,内部包含微信支付和在线视频会议功能,这两项业务,微信平台不对个人小程序开放。  需要企业小程序资质(仅供开发,不能上架发布,设置了权限无法上架),把小程序项目中的配置文件修改一下,换上提供者的 AppID 就可以了。  如果想上架发布小程序,可以自己注册个人主体的小程序开发者账号,然后把小程序中的在线会议和支付功能去掉,就可以上架发布了。 微信公众平台  访问微信公众平台,立即注册。 获取 AppID 和密钥  开发微信小程序必须要用到 AppID 和密钥,这两个东西可以在微信开发者平台上面获得。  在网页中找到开发栏目,然后选择开发设置 选项卡,在面板中你就能看到自己的小程序对应的 AppID 和 密钥 了。如果是刚注....

单点登录(Single Sign On):Shiro➕JWT

认证  认证就是要核验用户的身份,比如说通过用户名和密码来检验用户的身份。说简单一些,认证就是登陆。登陆之后 Shiro 要记录用户成功登陆的凭证。 授权  没有授权机制的 web 系统是很危险的,所有用户在登录成功之后都是超级管理员,都可以调用 CRUD 的 API。  授权是比认证更加精细度的划分用户的行为。比如说一个教务管理系统中,学生登陆之后只能查看信息,不能修改信息。而班主任就可以修改学生的信息。这就是利用授权来限定不同身份用户的行为。 Shiro 靠什么做认证与授权的?  Shiro 可以利用 HttpSession 或者 Redis 存储用户的登陆凭证,以及角色或者身份信息。  利用过滤器 (Filter),对每个 Http 请求过滤,检查请求对应的 HttpSession 或者 Redis 中的认证与授权信息。如果用户没有登陆,或者权限不够,那么 Shiro 会向客户端返回错误信息。  也就是说,我们写用户登陆模块的时候,用户登陆成功之后,要调用 Shiro 保存登陆凭证。然后查询用户的角色和权限,让 Shiro 存储起来。将来不管哪个方法需要登陆访问,或者拥有特定的角....

抵御跨站脚本攻击XSS

XSS  XSS 攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是 JavaScript,但实际上也可以包括 Java、 VBScript、ActiveX、 Flash 或者甚至是普通的 HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和 cookie 等各种内容。  解决方案:将用户的数据进行转义 Hutool  Hutool 是一个 Java 工具包类库,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装,组成各种 Util 工具类   1<dependency> 2 <groupId>cn.hutool</groupId> 3 <artifactId>hutool-all</artifactId> 4 <version>5.4.0</version> 5 </dependency> 对 Http 请求中的数据做转义 ....

验证库Validation

依赖 1<dependency> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-validation</artifactId> 4 </dependency> 校验类 TestSayHelloForm 1package com.example.emos.wx.controller.form; 2 3import io.swagger.annotations.ApiModel; 4import io.swagger.annotations.ApiModelProperty; 5import lombok.Data; 6 7import javax.validation.constraints.NotBlank; 8import javax.validation.constraints.Pattern; 9 10@ApiModel 11@Data 12public class TestS....

Swagger开启JWT

依赖 1<dependency> 2 <groupId>io.springfox</groupId> 3 <artifactId>springfox-swagger2</artifactId> 4 <version>2.9.2</version> 5 </dependency> 6 <dependency> 7 <groupId>io.springfox</groupId> 8 <artifactId>springfox-swagger-ui</artifactId> 9 <version>2.9.2</version> 10 </dependency> 配置类 1package soulboy.emos.wx.config; 2 3import io.swagger.annotations.ApiOperation; 4import org.springframewo....