dqhgjay5753
2015-02-01 11:52
浏览 848
已采纳

在Golang中解析Cookie字符串

If I get the cookie by typing document.cookie in the browser, is there any way to parse the raw string and save it as a http.Cookie?

图片转代码服务由CSDN问答提供 功能建议

如果我通过在浏览器中输入 document.cookie 来获取Cookie,是否有 解析原始字符串并将其另存为 http.Cookie 的方法? >

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • duanrong5927 2015-02-01 12:43
    已采纳
    package main
    
    import (
        "bufio"
        "fmt"
        "net/http"
        "strings"
    )
    
    func main() {
        rawCookies := "cookie1=value1;cookie2=value2"
        rawRequest := fmt.Sprintf("GET / HTTP/1.0
    Cookie: %s
    
    ", rawCookies)
    
        req, err := http.ReadRequest(bufio.NewReader(strings.NewReader(rawRequest)))
    
        if err == nil {
            cookies := req.Cookies()
            fmt.Println(cookies)
        }
    }
    

    Playground

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • drh47606 2015-11-25 20:42

    A bit shorter version

    package main
    
    import (
        "fmt"
        "net/http"
    )
    
    func main() {
        rawCookies := "cookie1=value1;cookie2=value2"
    
        header := http.Header{}
        header.Add("Cookie", rawCookies)
        request := http.Request{Header: header}
    
        fmt.Println(request.Cookies()) // [cookie1=value1 cookie2=value2]
    }
    

    http://play.golang.org/p/PLVwT6Kzr9

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题