Http是无状态协议
Cookie 是服务器保存在浏览器上的一段信息
服务器用来区分不同用户
简单发送Cookie
package main
import "net/http"
//设置cookie
func setCookie(w http.ResponseWriter, r *http.Request) {
//创建Cookie
// var cookie http.Cookie
cookie := http.Cookie{
Name: "user",
Value: "admin",
}
//发送给浏览器
w.Header().Set("set-Cookie", cookie.String())
}
func main() {
http.HandleFunc("/setCookie", setCookie)
http.ListenAndServe(":8080", nil)
}
也可以创建多个Cookie
package main
import "net/http"
//设置cookie
func setCookie(w http.ResponseWriter, r *http.Request) {
//创建Cookie
// var cookie http.Cookie
cookie := http.Cookie{
Name: "user",
Value: "admin",
}
cookie2 := http.Cookie{
Name: "user",
Value: "admin",
}
//发送给浏览器
w.Header().Set("set-Cookie", cookie.String())
//添加第二格cookie
w.Header().Add("set-Cookie", cookie2.String())
}
func main() {
http.HandleFunc("/setCookie", setCookie)
http.ListenAndServe(":8080", nil)
}
第一个cookie用set
第二格cookie用add
简单方法直接设置cookie
package main
import "net/http"
//设置cookie
func setCookie(w http.ResponseWriter, r *http.Request) {
//创建Cookie
// var cookie http.Cookie
cookie := http.Cookie{
Name: "user",
Value: "zh",
}
http.SetCookie(w, &cookie)
//发送给浏览器
// w.Header().Set("set-Cookie", cookie.String())
//添加第二格cookie
// w.Header().Add("set-Cookie", cookie2.String())
}
func main() {
http.HandleFunc("/setCookie", setCookie)
http.ListenAndServe(":8080", nil)
}