您的位置 首页 golang

beego 使用redis session 突然爆出个503错误

12年开始接触 golang ,当年还经常跟 golang的无闻大神 学习。现在有点后悔当初没坚持下来学习。

导致错误的原因是,session一开始我存储的string。后来改存储对象,再编译也通过了。

只是一访问接口就抛出这个:

  gob: name not registered for interface: "*models.User"  

接着 百度 出来的解决方案:

 gob.Register(models.User{})  

网络截图

这种本身应该没什么问题,但是本地还是同样的错误。( 可能版本不同,传参变了

后来注意到“*models.User”,说的是指针

于是改成:

 gob.Register(&models.User{})  

后访问正常

BTW

本地环境介绍: go 1.16, astaxie/beego 1.12.3,macbook pro m1,redis+session,

show you code

 package main

import (
"admin.zc.me/components"
"admin.zc.me/controllers"
"admin.zc.me/models"
_ "admin.zc.me/routers"
"encoding/gob"
"github.com/astaxie/beego"
_ "github.com/astaxie/beego/session/redis"
)

func init() {
beego.ErrorController(&controllers.ErrController{})

components.InitLogger()
models.DbConnect()
initSession()
}
func initSession() {
gob.Register(&models.User{})
address := beego.AppConfig.String("redis_address")
beego.BConfig.WebConfig.Session.SessionProvider = "redis"
beego.BConfig.WebConfig.Session.SessionProviderConfig = address
}
func main() {

beego.Run()
}
  

文章来源:智云一二三科技

文章标题:beego 使用redis session 突然爆出个503错误

文章地址:https://www.zhihuclub.com/98372.shtml

关于作者: 智云科技

热门文章

网站地图