Cookie 是用户在访问网站时服务器发送过来存储在浏览器上的一小段数据。每次用户访问网页,浏览器都把 Cookies 发送回服务器以提醒服务器这个用户以前干过什么。 Cookie 用来提供一个可靠的途径让服务器记住一些状态信息(比如在线商城中添加物品到购物车)或者记录用户的浏览器行为(比如点击了某个按钮,登录,哪个页面被访问过)。 Cookie 也可以用来存储用户输入过的表单内容像电话号码,地址等等。
Echo 使用 golang 自带的 http.Cookie 对象来从处理函数的上下文里写入/读取 cookies。
http.Cookie
func writeCookie(c echo.Context) error { cookie := new(http.Cookie) cookie.Name = "username" cookie.Value = "jon" cookie.Expires = time.Now().Add(24 * time.Hour) c.SetCookie(cookie) return c.String(http.StatusOK, "write a cookie") }
new(http.Cookie)
c.SetCookie(cookies)
Set-Cookie
func readCookie(c echo.Context) error { cookie, err := c.Cookie("username") if err != nil { return err } fmt.Println(cookie.Name) fmt.Println(cookie.Value) return c.String(http.StatusOK, "read a cookie") }
c.Cookie("name")
Getter
func readAllCookies(c echo.Context) error { for _, cookie := range c.Cookies() { fmt.Println(cookie.Name) fmt.Println(cookie.Value) } return c.String(http.StatusOK, "read all cookie") }
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8