dongtao5104 2016-11-30 11:44
浏览 51

杜松子酒无法设置cookie

I am trying to set a cookie on an HTML page

 func testCookie(c *gin.Context) {
    c.SetCookie("test1", "testvalue", 10, "/", "", true, true)
    c.HTML(200, "dashboard", gin.H{
        "title":    "Dashboard",
        }
    }

This should have set the cookie on the HTML page but it doesn't. My server is running to serve https requests. I am not sure why I am not able to set cookies here.

  • 写回答

2条回答 默认 最新

  • dongyi3616 2016-11-30 12:13
    关注

    SetCookie() sets the cookie on the ResponseWriter's headers hence you can read its value in subsequent requests where it can be read using Request object's Cookie() method.

    Here's the related code of the same to give you an idea:

    func (c *Context) SetCookie(
        name string,
        value string,
        maxAge int,
        path string,
        domain string,
        secure bool,
        httpOnly bool,
    ) {
        if path == "" {
            path = "/"
        }
        http.SetCookie(c.Writer, &http.Cookie{
            Name:     name,
            Value:    url.QueryEscape(value),
            MaxAge:   maxAge,
            Path:     path,
            Domain:   domain,
            Secure:   secure,
            HttpOnly: httpOnly,
        })
    }
    
    func (c *Context) Cookie(name string) (string, error) {
        cookie, err := c.Request.Cookie(name)
        if err != nil {
            return "", err
        }
        val, _ := url.QueryUnescape(cookie.Value)
        return val, nil
    }
    

    Update

    You won't be able to access cookies in your page because you're passing HttpOnly as true. When this is set to true only the server has access to the cookies and you can't fetch their values in front-end using Javascript.

    评论

报告相同问题?

悬赏问题

  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?