go web

1.停掉一个http 服务

(1.)取消context
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
(2.)执行shutdown()
http.Server.Shutdown(ctx)

2.启动一个http服务

httpServer := &http.Server{
	Addr:              fmt.Sprintf(":%d", p.httpPort),
	Handler:           routers.Router,
	ReadHeaderTimeout: 5 * time.Second,
}

httpServer.ListenAndServe()

3.解析.ini文件

// 先获取章节,再获取相应的字段,并赋值默认值
*ini.File.Section("rtsp").Key("ffmpeg_path").MustString("")

4.md5加密

func MD5(str string) string {
	encoder := md5.New()
	encoder.Write([]byte(str))
	return hex.EncodeToString(encoder.Sum(nil))
}

5.session token

//创建token
sess := sessions.Default(c)
sess.Set("uid", user.ID)
sess.Set("uname", user.Username)
c.IndentedJSON(200, gin.H{
	"token": sessions.Default(c).ID(),
})

//获取token
sess := sessions.Default(c)
uid := sess.Get("uid")
if uid != nil {
	c.IndentedJSON(200, gin.H{
		"id":   uid,
		"name": sess.Get("uname"),
	})
}

//销毁session,退出登录
sess := sessions.Default(c)
sess.Destroy()

//修改密码后,token要重新赋值
sess := sessions.Default(c)
token, _ := sess.RenewID()
c.IndentedJSON(http.StatusOK, gin.H{
	"token": token,
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值