0
点赞
收藏
分享

微信扫一扫

Go语言cookie的基本操作

cookie数据结构介绍

Go语言cookie的基本操作_数据


cookie数据结构介绍

a. Expires,cookie过期时间,使用绝对时间。比如2018/10/10 10:10:10

b. MaxAge,cookie过期时间,使用相对时间,比如300s

c. Secure属性,是否需要安全传输,为true时只有https才会传输该cookie

Go语言cookie的基本操作

d. HttpOnly属性,为true时,不能通过js读取该cookie的值


golang读取cookie

a. 读取单个cookie, http.Request.Cookie(key string)

b. 读取所有cookie, http.Request.Cookies()


golang设置cookie

a. cookie := http.Cookie{Name: "username", Value: "astaxie", Expires: expiration}

b. http.SetCookie(w, &cookie)


package main

import (
"fmt"
"net/http"
)

func indexHandle(w http.ResponseWriter, r *http.Request) {

/*cookies := r.Cookies()
for index, cookie := range cookies {
fmt.Printf("index:%d cookie:%#v\n", index, cookie)
}*/
c, err := r.Cookie("sessionid")
fmt.Printf("cookie:%#v, err:%v\n", c, err)

cookie := &http.Cookie{
Name: "sessionid",
Value: "lkjsdfklsjfklsfdsfdjslf",
MaxAge: 3600,
Domain: "localhost",
Path: "/",
}

http.SetCookie(w, cookie)

//在具体数据返回之前设置cookie,否则cookie种不上
w.Write([]byte("hello"))
}

func main() {
http.HandleFunc("/", indexHandle)
http.ListenAndServe(":9090", nil)
}


举报

相关推荐

0 条评论