Bagaimana untuk meminta kuki di Golang

PHPz
Lepaskan: 2023-04-10 15:54:03
asal
1195 orang telah melayarinya

Golang meminta Kuki

Sebagai pengaturcara, kami sering melibatkan permintaan rangkaian Apabila melaksanakan fungsi permintaan rangkaian, kami selalunya perlu menggunakan kuki. Jadi, bagaimana untuk meminta kuki di Golang? Seterusnya, artikel ini akan memperkenalkan cara meminta kuki di Golang.

Pertama, kita perlu memahami apa itu Kuki. Kuki ialah kaedah penghantaran data dalam protokol HTTP, digunakan untuk menyimpan maklumat status pelanggan. Ia boleh merekodkan maklumat log masuk pengguna, sejarah pelayaran, troli beli-belah dan maklumat lain, dengan itu merealisasikan penjejakan dan pengurusan maklumat pengguna.

Di Golang, meminta kuki terbahagi kepada dua bahagian: menetapkan kuki dan mendapatkan kuki.

Tetapkan Kuki:

Dalam permintaan Golang, anda boleh menetapkan kuki dengan menetapkan pengepala. Dalam sesetengah tapak web yang memerlukan log masuk, adalah perlu untuk membawa kuki dalam pengepala permintaan untuk mendapatkan data secara haram.

Kod contoh:

func setCookie() {
    url := "https://www.example.com/login"
    req, err := http.NewRequest("POST", url, strings.NewReader(`{"foo":"bar"}`))
    if err != nil {
        log.Fatalln(err)
    }
    req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
    //设置Cookie
    req.AddCookie(&http.Cookie{Name: "user", Value: "123"})
    cli := http.Client{}
    resp, err := cli.Do(req)
    if err != nil {
        log.Fatalln(err)
    }
    defer resp.Body.Close()
    fmt.Println(resp.StatusCode)
}
Salin selepas log masuk

Dalam contoh, kami mula-mula membina badan permintaan permintaan siaran, tetapkan Jenis Kandungan dalam pengepala permintaan, dan kemudian hantar req.AddCookie( ) Kaedah ini menetapkan kuki bernama pengguna dengan nilai 123.

Dapatkan Kuki:

Dalam permintaan Golang, anda boleh mendapatkan Kuki melalui objek Permintaan. Apabila melakukan beberapa operasi logik perniagaan, kami perlu mendapatkan kuki daripada pengepala permintaan pautan untuk mendapatkan beberapa maklumat tapak web.

Kod sampel:

func getCookie() {
    url := "https://www.example.com/home"
    req, err := http.NewRequest("GET", url, nil)
    if err != nil {
        log.Fatalln(err)
    }
    cli := http.Client{}
    resp, err := cli.Do(req)
    if err != nil {
        log.Fatalln(err)
    }
    defer resp.Body.Close()
    cookies := resp.Cookies()
    for _, c := range cookies {
        fmt.Printf("cookieName=%s; cookieValue=%s\n", c.Name, c.Value)
    }
}
Salin selepas log masuk

Dalam contoh, kami mula-mula membina badan permintaan permintaan GET, dan kemudian mendapatkan kuki dalam badan respons dengan memanggil resp.Cookies() kaedah, Akhirnya, kuki yang diperoleh adalah output ke konsol.

Ringkasan:

Melalui contoh kod di atas, kita dapat melihat bahawa meminta kuki di Golang adalah sangat mudah. Dengan menetapkan objek Permintaan atau membina pengepala permintaan, kami boleh menetapkan dan mendapatkan Kuki. Dalam pembangunan sebenar, kita boleh belajar daripada teknik ini untuk melaksanakan operasi logik perniagaan yang lebih kompleks.

Atas ialah kandungan terperinci Bagaimana untuk meminta kuki di Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan