美文网首页
Golang cookie使用

Golang cookie使用

作者: 懒人程序猿 | 来源:发表于2020-03-28 17:15 被阅读0次

cookie设置和获取使用方法


func HttpCookies() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        cName := http.Cookie{
            Name:       "name",         //  cookie的名称
            Value:      "golang",       //  cookie名称对应的值
            Path:       "/",            //
            Domain:     "",             //  cookie的作用域
            Expires:    time.Time{},    //  cookie的过期时间
            RawExpires: "",
            MaxAge:     0,              //  设置过期时间,对应浏览器cookie的MaxAge属性
            Secure:     false,          //  设置Secure属性(说明:Cookie的Secure属性,意味着保持Cookie通信只限于加密传输,指示浏览器仅仅在通过安全/加密连接才能使用该Cookie。如果一个Web服务器从一个非安全连接里设置了一个带有secure属性的Cookie,当Cookie被发送到客户端时,它仍然能通过中间人攻击来拦截)
            HttpOnly:   true,           //  设置httpOnly属性(说明:Cookie的HttpOnly属性,指示浏览器不要在除HTTP(和 HTTPS)请求之外暴露Cookie。一个有HttpOnly属性的Cookie,不能通过非HTTP方式来访问,例如通过调用JavaScript(例如,引用 document.cookie),因此,不可能通过跨域脚本(一种非常普通的攻击技术)来偷走这种Cookie。尤其是Facebook 和 Google 正在广泛地使用HttpOnly属性。)
            SameSite:   0,
            Raw:        "",
            Unparsed:   nil,
        }
        cId := http.Cookie{
            Name:       "id",
            Value:      "21",
            Path:       "/",
            Domain:     "",
            Expires:    time.Time{},
            RawExpires: "",
            MaxAge:     0,
            Secure:     false,
            HttpOnly:   true,
            SameSite:   0,
            Raw:        "",
            Unparsed:   nil,
        }
        // 设置cookie
        w.Header().Set("Set-Cookie", cId.String())
        w.Header().Add("Set-Cookie", cName.String())
        // 设置cookie
        http.SetCookie(w, &http.Cookie{
            Name:       "mobile",
            Value:      "13388888888",
            Path:       "/",
            Domain:     "",
            Expires:    time.Time{},
            RawExpires: "",
            MaxAge:     0,
            Secure:     false,
            HttpOnly:   true,
            SameSite:   0,
            Raw:        "",
            Unparsed:   nil,
        })
        http.SetCookie(w, &http.Cookie{
            Name:       "email",
            Value:      "golang@126.cn",
            Path:       "/",
            Domain:     "",
            Expires:    time.Time{},
            RawExpires: "",
            MaxAge:     0,
            Secure:     false,
            HttpOnly:   true,
            SameSite:   0,
            Raw:        "",
            Unparsed:   nil,
        })
        // 读取cookie
        name := r.Header["Cookie"]
        fmt.Println(name)
        // 通过key获取cookie
        id, err := r.Cookie("id")
        if err != nil {
            fmt.Println(err.Error())
        } else {
            fmt.Println(id)
        }
        // 获取全部cookie
        cookies := r.Cookies()
        fmt.Println(cookies)

    })
    http.ListenAndServe("127.0.0.1:8080", nil)
}
image.png

相关文章

  • 知识分享之Golang——gin中设置和获取cookie

    知识分享之Golang——gin中设置和获取cookie 背景 知识分享之Golang篇是我在日常使用Golang...

  • Golang cookie使用

    cookie设置和获取使用方法

  • J2EE--Cookie

    为什么要使用Cookie? 怎样使用Cookie? Cookie使用缺陷 Cookie使用示例 1. 为什么要使用...

  • SDWebImage与Cookie

    使用Cookie -设置SDWebImageHandleCookies使用Cookie 储存Cookie -设置H...

  • Golang Cookie 简介

    Cookie 互联网隐私一直是一个敏感话题。很多爆炸新闻或者香艳的丑闻,似乎就像病毒一样每隔一段时间就爆发。这不仅...

  • 了解HTTP Cookie

    Cookie 是什么 Cookie 的分类 如何设置 Cookie 如何读取 Cookie Cookie 的使用场...

  • jsp-cookie

    使用JSP设置Cookie (1)创建一个Cookie对象: 调用Cookie的构造函数,使用一个cookie名称...

  • Cookie

    一、Cookie简介 二、Cookie常用方法 三、Cookie的使用

  • js cookie

    js设置cookie js获取cookie //使用方式: 给cookie设置终止日期 例如:如果要将cookie...

  • cookie实战

    使用JavaScript操作cookie 创建和存储cookie。 2.读取cookie值 3.判断cookie是...

网友评论

      本文标题:Golang cookie使用

      本文链接:https://www.haomeiwen.com/subject/pcdsuhtx.html