title: How to use session with golang revel framework
body: <p>I use the golang web framework as my web framework. But the session doesn`t use. the code I write as follow :</p>
  
  <pre><code>package controllers 
  
  import (
      "fmt"
      "net/http"
      "strconv"
  
      "GoRBAC/app/base"
      "GoRBAC/app/models"
  
      r "github.com/revel/revel"
  )
  
  type App struct {
      *r.Controller
  }
  
  // 首页
  func (this App) Index() r.Result {
      userDao := models.NewUserDao()
      user, err := userDao.QueryById(1)
      if err != nil {
          fmt.Println(err)
      }
      fmt.Println(user)
      return this.Render()
  }
  
  // 跳转至登录页面
  func (this App) ToLogin() r.Result {
      return this.RenderTemplate("App/login.html")
  }
  
  func (this App) Login() r.Result {
  
      username := this.Params.Get("username")
      password := this.Params.Get("password")
      securityCode := this.Params.Get("securityCode")
  
      fmt.Println(this.Session["securityCode"])
      fmt.Println(username)
      fmt.Println(password)
      fmt.Println(securityCode)
  
      if securityCode != this.Session["securityCode"] {
          return this.RenderText("error securityCode")
      } else {
          userDao := models.NewUserDao()
          user, err := userDao.QueryByUsername(username)
          if err != nil || user == nil {
              return this.RenderText("username not exsit")
          } else if user.Password != password {
              return this.RenderText("error password")
          } else {
              delete(this.Session, "securityCode")
              this.RenderText("ok")
          }
      }
      return this.RenderText("ok")
  }
  
  // 获取验证码图片
  func (this App) GetSecurityCode(timestamp int64) r.Result {
      // 时间戳参数，第一次加载为1，后续加载为当前的时间戳，可以用来验证客户端刷新频率
      // 如：刷新频率过高，直接限制当前客户端等
      fmt.Println("GetSecurityCode", timestamp)
  
      d := make([]byte, 4)
      s := base.NewLen(4)
      ss := ""
      d = []byte(s)
  
      for v := range d {
          d[v] %= 10
          ss += strconv.FormatInt(int64(d[v]), 32)
      }
  
      // 将验证码字符串存入到session
      this.Session["securityCode"] = ss
      this.Session.SetNoExpiration()
  
      fmt.Println(this.Session["securityCode"])
      fmt.Println(ss)
  
      this.Response.Status = http.StatusOK
      this.Response.ContentType = "image/png"
  
      base.NewImage(d, 100, 40).WriteTo(this.Response.Out)
  
      return this.Render()
  }
  </code></pre>
  
  <p>I set the securityCode value in session in the method GetSecurityCode() , this method use to generate the security Code for login verify</p>
  
  <p>I use the the securityCode value in the method Login(). But I get nothing for the value </p>
  
  <p>Anyone who can help me , how can I fix this problem ?</p>
  
  <p>thanks !!</p>