Liangjf

The darkest hour is that before the dawn.

token自动续期

长短token实现自动续期

长短token实现自动续期 #实现自动登录 JWT Token设置有效期,一旦失效用户就要重新登录,这样的体验非常差,需要做到用户在无感知的情况下,解决如何刷新Token的问题 JWT Token iss: jwt签发者 sub: jwt所面向的用户 aud: 接收jwt的一方 exp: jwt的过期时间,这个过期时间必须要大于签发时间 nbf: 定义在什么时间之...

go mod

go mod的使用技巧

go mod的使用技巧 go mod的强大 go mod 确实方便,无视翻墙问题,下载啥都可以。 go mod常用命令 go mod 一般是使用以下命令: go mod init xxx go mod tidy go mod edit 这里着重说下 go mod edit 的作用。 go mod edit 用来修改 go.mod 文件的包的版本关系。 修改包...

动态密钥方案

动态密钥接口服务设计

动态密钥服务设计(aes128+base64 动态加密方案) 技术栈 go gin redis 架构图 密钥保管方案 密钥1(本地保管) REQ_KEY = "xxxxxxxxxxxxxxxx" REQ_IV  = "yyyyyyyyyyyyyyyy" 密钥2(动态变化) 外部(数据库update触发写入/手工set)写进reidis,redis定时刷新。通过...

公众号/小程序

公众号后台开发

公众号后台开发 申请微信公众平台添加小程序,公众号 主要是为了公用unionID,因为小程序和公众号各有自己的OpenId,如果是需要根据小程序的业务逻辑来推送消息到公众号的话,就需要两者关注,并且通过unionID作为唯一识别,来达到推送消息的目的。 公众号开发信息 设置开发者密码(需要管理员扫码) 设置白名单(项目部署的机器的ip) 服务器配置 服务器地址...

protobuf

go protobuf

go proto指定import路径 proto文件在import依赖包。需要在proto命令生成文件时,指明import的包的路径 demo: syntax = "proto3"; package gateway; import "google/api/annotations.proto"; message Message { string msg = 1; } se...

用户权限

用户权限管理模块设计

用户权限管理模块设计 在所有web,app,后台管理系统等,都会有一个用户权限管理模块。一个用户权限管理系统,主要包括三个元素:账号、角色、权限。 用户权限管理模块的设计思路:一个用户可以绑定多个角色,一个角色有多个权限,一个权限对应一个权限信息。如图所示: 用户权限一般涉及四张表 tb_user(用户表) tb_role(角色表) tb_role_privilege(...

docker

gin+docker+阿里云

gin+docker+阿里云 原理:多阶段构建打包,创建最小go容器。 build阶段 打ca证书阶段(涉及到认证的话) 生产阶段pull构建最小镜像 0、gin+docker例子 源代码在github liangjf@blue:~/ljf_home/code/go_home/project/gin-docker$ tree -L 3 . ├── Dockerfile...

docker

阿里云镜像仓库

阿里云镜像仓库 阿里云镜像仓库地址 步骤 1、注册阿里云账号 2、进入容器镜像服务 3、创建镜像仓库,命名空间,代码源 4、查看访问凭证 5、设置镜像加速器 6、在终端设置阿里云镜像加速器 sudo mkdir -p /etc/docker sudo te...

docker

什么是容器

什么是容器? 公司开始上 docker 和 k8s 了,虽然之前接触过,但是还没有真正使用的,因此,趁着这个周末打台风就不出门了,在家捣鼓捣鼓吧。哈哈~~ 于是去[docker官网]: https://www.docker.com/resources/what-container 溜了一圈,熟悉下docker的定义,名词,实现原理等,并自己弄了个gin+docker的实战。(我喜欢用 ...

redis

redis集群搭建和应用

集群搭建和应用 3主3从, 部署在同一台机器上 创建配置 进入redis根目录 touch master-8001.conf echo "port 8001 bind 127.0.0.1 daemonize yes pidfile /var/run/master-8001.pid cluster-enabled yes cluster-config-file maste...