当前位置: 首页 > news >正文

大型网站开发经典框架阳江兼职招聘网最新招聘

大型网站开发经典框架,阳江兼职招聘网最新招聘,广州招聘网网站开发,专门做生鲜的网站Gin中的Cookie和Session的用法 文章目录 Gin中的Cookie和Session的用法介绍Cookie代码演示 Session代码展示 介绍 cookie 和 session 是 Web 开发中常用的两种技术,主要用于跟踪用户的状态信息。 Cookie func (c *Context) Cookie(name string, value string, max…

Gin中的Cookie和Session的用法

文章目录

  • Gin中的Cookie和Session的用法
    • 介绍
      • Cookie
        • 代码演示
      • Session
        • 代码展示

介绍

  • cookiesession 是 Web 开发中常用的两种技术,主要用于跟踪用户的状态信息。

Cookie

  • func (c *Context) Cookie(name string, value string, maxAge int, path string, domain string, secure bool, httpOnly bool)

  • name:Cookie的名称

  • value:Cookie的值

  • maxAge:Cookie的最大生存时间,单位秒。如果为-1,则会产生一个会话Cookie,不设定过期时间。

  • path:Cookie路径,默认是’/’

  • domain:Cookie域名。默认空,代表当前访问的域名。

  • secure: 是否通过HTTPS传输Cookie

  • httpOnly: 是否只能服务器修改,HTTP请求中不会显示在Cookie头中。

  • 在 HTTP 协议中,每个请求都是无状态的,也就是说服务器无法知道当前的请求和之前的请求是来自同一个用户。Cookie 是一种在客户端存储用户数据的技术,可以帮助服务器识别用户

  • 当用户第一次访问服务器时,服务器可以生成一个唯一的 ID 并将其存储在一个 Cookie 中,然后将这个 Cookie 发送给客户端。客户端在收到 Cookie 后,会将其存储起来,并在每次发送请求时都将这个 Cookie 附加到请求中。这样,服务器就可以通过检查 Cookie 来识别用户。

代码演示

  • Gin中Cookie的方法只有两个
    • 获取cookie: c.Cookie()
    • 设置cookie:c.SetCookie()
package mainimport ("github.com/gin-gonic/gin""net/http"
)func main() {r := gin.Default()//使用cookier.GET("/cookie", CookieHandle)r.Run()
}func CookieHandle(c *gin.Context) {userID := "userID"//获取指定的cookiecookie, err := c.Cookie(userID)//没有就创建cookieif err != nil {c.SetCookie(userID, "0", 60*60, "/", "", true, false)}//获取成功就打印cookiec.JSON(http.StatusOK, gin.H{"status": cookie,})
}

Session

  • Go语言中的gin想要用Session需要引入第三方库

    • 拉取:go get github.com/gin-contrib/sessions
    • 导包:import "github.com/gin-contrib/sessions"
    • 具体详情:https://github.com/gin-contrib/sessions
  • 虽然 Cookie 可以用来识别用户,但是它并不能存储大量的用户数据。这是因为 Cookie 的大小有限制,而且每个 Cookie 都会在每次请求时发送给服务器,如果 Cookie 太大,会导致网络延迟。

  • Session 是另一种用于存储用户数据的技术。与 Cookie 不同,Session 数据存储在服务器端。当用户第一次访问服务器时,服务器会创建一个新的 Session,并生成一个与之关联的唯一 ID。这个 ID 会被存储在一个 Cookie 中,并发送给客户端。这样,当客户端再次发送请求时,服务器就可以通过 Session ID 来查找对应的 Session 数据。

代码展示

package mainimport ("github.com/gin-contrib/sessions""github.com/gin-contrib/sessions/cookie""github.com/gin-gonic/gin"
)func main() {r := gin.Default()store := cookie.NewStore([]byte("secret"))r.Use(sessions.Sessions("mysession", store))r.GET("/hello", func(c *gin.Context) {session := sessions.Default(c)if session.Get("hello") != "world" {session.Set("hello", "world")session.Save()}c.JSON(200, gin.H{"hello": session.Get("hello")})})r.Run(":8000")
}
http://www.yayakq.cn/news/949057/

相关文章:

  • 怎么给网站 做排名沈阳网站制作公司云蓝图
  • 深圳企业网站制作推广运营wp做网站难吗
  • 怎么做属于自己的网站月刊可以用什么网站做
  • 顺义企业网站建站公司东莞阳光网app
  • 网站模板放哪西安建筑科技大学就业信息网
  • 做企业网站需要做什么网站建设与推广方案模板
  • 织梦网站错位展台设计搭建公司排名
  • 怎样给网站做 站内搜索沈阳网站建设思路
  • 深圳做网站排名价格宝安做棋牌网站建设
  • 以橙色为主的网站国外最牛设计网站
  • 保定医疗网站建设公司合肥企业网站建设工作室
  • 简单网站建设方案策划crm管理系统排名
  • 建站网页建设海口网页设计
  • 沈阳专业做网站开发公司上海英文网站建设
  • 服务器做网站空间安徽网站建设 网新
  • 鼠标垫东莞网站建设求职网站开发
  • 对于网站建设的调查问卷wordpress 书 pdf
  • 企业网站做广告ps网页设计心得体会
  • 网站开发人员的 生活百度站长平台网址
  • 优秀手机网站模板图片广东省建设交易中心网站首页
  • 桐柏网站建设办公室空间装修设计
  • django做网站和js做网站网站频道规划
  • 珠宝网站设计书签制作
  • 网站开发的技术内容南京网站设公司
  • 广州优俊网站制作公司建设网站有哪些术语
  • 百度贴吧有没有做网站的人如何免费创建一个自己的网站
  • 免费seo网站自动推广如何用手机设计房子装修图
  • 创建视频网站代理公司注册收费
  • 湛江网站建设制作价格注册资本可以随便填吗
  • 美声广告网站建设泰兴市淘宝网站建设