12345678910111213141516171819202122232425262728293031323334353637 |
- package main
- import (
- "net/http"
- )
- type ErrorRet struct {
- Errno int `json:"errno"`
- Error string `json:"error"`
- }
- func getSession(req *http.Request) (*Session, bool) {
- var sessid string
- cookies := req.Cookies()
- if len(cookies) > 0 {
- for _, item := range cookies {
- if item.Name == "sessid" && item.Value != "" {
- sessid = item.Value
- break
- }
- }
- }
- if sessid == "" {
- return nil, false
- } else {
- return SessPoll.Get(sessid)
- }
- }
- func checkLogin(resp http.ResponseWriter, req *http.Request) (*Session, bool) {
- sess, ok := getSession(req)
- if !ok {
- resp.Header().Set("Location", "/login")
- resp.WriteHeader(302)
- }
- return sess, ok
- }
|