gin框架中设置了session无法取到session

gin框架中设置了session无法取到

如代码所示

1,浏览器访问http://127.0.0.1:4000/DoSet

Doset方法设置了session,此时使用goland发现context 中的keys 是存了这个session_01的

gin框架中设置了session无法取到session_第1张图片

此时发现context中Keys中没有存的session_01
gin框架中设置了session无法取到session_第2张图片

一开始使用的是postman测试,以为是调用DoSet方法的时候返回的cookie没有在调用DoGet携带上去,于是用浏览器测试发现不好使,后面以为是分配的路由导致不同的组访问不到,结果发现也不是.中间使用了很多方法都不管用

解决办法:

修改代码

sessions包属于 "github.com/gin-gonic/contrib/sessions"

然后就能够正常的使用session了

package routers

import (
	ig "wahaha/module/gin"
	ggin "github.com/gin-gonic/gin"
	"github.com/gin-gonic/contrib/sessions"
	"fmt"
)

func GinRouter() {

	ig.GinEngine.GET("/DoSet", func(context *ggin.Context) {
		session := sessions.Default(context)
		session.Set("session_01", "hahaha")
		session.Save()

	})

	ig.GinEngine.GET("/DoGet", func(context *ggin.Context) {
		session := sessions.Default(context)
		value := session.Get("session_01")
		fmt.Println(value)
	})

}

参考https://go-search.org/view?id=github.com%2Fgin-gonic%2Fcontrib%2Fsessions

你可能感兴趣的:(golang异常)