登录
首页 >  Golang >  Go问答

使用 Redis 进行 Revel 会话集群

来源:stackoverflow

时间:2024-04-22 08:18:27 322浏览 收藏

一分耕耘,一分收获!既然打开了这篇文章《使用 Redis 进行 Revel 会话集群》,就坚持看下去吧!文中内容包含等等知识点...希望你能在阅读本文后,能真真实实学到知识或者帮你解决心中的疑惑,也欢迎大佬或者新人朋友们多留言评论,多给建议!谢谢!

问题内容

在 crystal#kemal 中,我有 before_all 方法,它将作为请求的网关(以及用于身份验证检查)

before_all do |env|
  # go to /login if user doesn't have cookie (set cookie on login)
  if env.request.path != "/login"
    if env.request.cookies.has_key?("guid") == false
      env.redirect "/login"
    else
      user_guid = env.request.cookies["guid"].value
      # if in redis is logged, but not in the app
      if is_logged_in(user_guid)
        if !is_logged(env)
          app_sess_set(env, user_guid)
        end
      else
        env.redirect "/login"
      end
    end
  end
end

revel 是否有像 before_all 这样的方法,我可以像 kemal 那样做吗?


解决方案


http://revel.github.io/manual/interceptors.html

func (c App) SessionProcess() revel.Result {
    # do action
    return nil
}

func init() {
    revel.InterceptMethod(App.SessionProcess, revel.BEFORE)
}

到这里,我们也就讲完了《使用 Redis 进行 Revel 会话集群》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>