Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menetapkan kuki dalam golang

Bagaimana untuk menetapkan kuki dalam golang

PHPz
PHPzasal
2023-04-06 08:52:501277semak imbas

Golang ialah bahasa pengaturcaraan baru muncul yang mempunyai kelebihan dalam kesederhanaan dan kecekapan Cara menggunakan Golang untuk menetapkan kuki adalah isu yang sangat penting dalam pembangunan web. Artikel ini akan memperkenalkan cara menetapkan kuki menggunakan Golang.

1. Apakah itu biskut?

Sebelum memperkenalkan cara menetapkan kuki di Golang, mari kita fahami dahulu apa itu kuki. Kuki ialah sekeping kecil maklumat teks yang disimpan pada klien (seperti penyemak imbas) dan digunakan untuk menjejaki aktiviti pengguna. Apabila pengguna melawat tapak web, tapak web tersebut boleh menggunakan kuki untuk menyimpan dan membaca data pengguna, seperti maklumat log masuk pengguna, status troli beli-belah, dsb.

2. Menetapkan kuki

Di Golang, menetapkan kuki memerlukan penggunaan fungsi SetCookie dalam pakej net/http. Fungsi SetCookie ditakrifkan seperti berikut:

func SetCookie(w ResponseWriter, cookie *Cookie)

Antaranya, w ialah jenis antara muka ResponseWriter, yang boleh diperolehi melalui http.ResponseWriter Cookie ialah penunjuk *http.Cookie type, yang menunjukkan kuki maklumat yang perlu ditetapkan.

Kod adalah seperti berikut:

package main

import (
    "net/http"
)

func main() {
    http.HandleFunc("/", setCookie)
    http.ListenAndServe(":8080", nil)
}

func setCookie(w http.ResponseWriter, r *http.Request) {
    cookie := &http.Cookie{
        Name: "username",
        Value: "golang",
        Path: "/",
        MaxAge: 120,
    }
    http.SetCookie(w, cookie)
    w.Write([]byte("Cookie set successfully."))
}

Kod di atas akan menetapkan kuki bernama "nama pengguna", nilainya ialah "golang", laluannya ialah "/", dan tamat tempoh masa ialah 120 saat pada klien (pelayar).

3. Mendapatkan kuki

Mendapatkan kuki juga dicapai melalui fungsi Kuki yang disediakan dalam pakej net/http. Takrifan fungsi Kuki adalah seperti berikut:

func (r *Request) Cookie(name string) (*Cookie, error)

Antaranya, r ialah jenis struktur Permintaan, menunjukkan maklumat permintaan, nama ialah nama kuki, dan nilai pulangan ialah penunjuk bagi *http.Jenis kuki dan nilai pulangan jenis ralat .

Kod adalah seperti berikut:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", getCookie)
    http.ListenAndServe(":8080", nil)
}

func getCookie(w http.ResponseWriter, r *http.Request) {
    cookie, err := r.Cookie("username")
    if err != nil {
        http.Error(w, err.Error(), http.StatusInternalServerError)
        return
    }
    fmt.Fprintf(w, "Hello %s", cookie.Value)
}

Kod di atas akan mendapat nilai kuki bernama "nama pengguna" daripada kuki pelanggan (pelayar) dan memaparkannya di web muka surat.

4. Ringkasan

Artikel ini memperkenalkan cara menggunakan Golang untuk menetapkan dan mendapatkan kuki. Dalam pembangunan web, kuki ialah teknologi yang sangat penting, yang boleh membantu tapak web menjejaki aktiviti pengguna dan menyediakan perkhidmatan yang diperibadikan. Saya berharap pembaca dapat menguasai teknologi kuki Golang dengan lebih baik dengan mempelajari artikel ini.

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

Kenyataan:
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