Rumah >pembangunan bahagian belakang >Golang >Mengapa Pelayar Saya Tidak Menyimpan Kuki Ditetapkan oleh Pelayan My Go dalam Apl React?

Mengapa Pelayar Saya Tidak Menyimpan Kuki Ditetapkan oleh Pelayan My Go dalam Apl React?

Patricia Arquette
Patricia Arquetteasal
2024-12-01 13:02:09737semak imbas

Why Doesn't My Browser Store Cookies Set by My Go Server in a React App?

Pelayar Menolak Menyimpan Kuki

Pernyataan Masalah

Dalam aplikasi React yang disepadukan dengan pelayan Go, pelayan cuba menetapkan kuki semasa respons log masuk. Walau bagaimanapun, kuki tidak disimpan oleh penyemak imbas, walaupun ia dikembalikan dalam respons tab rangkaian.

Penerokaan

Coretan kod yang disediakan menunjukkan bahawa:

  • Perkongsian sumber silang asal (CORS) dikonfigurasikan untuk membenarkan kelayakan.
  • The Fungsi http.SetCookie() digunakan untuk menambah kuki pada respons dengan tetapan berikut:

    • Nama: "accessToken"
    • Nilai: token
    • Maks umur: ditentukan sebagai integer
    • Laluan: "/api"
    • HTTP Hanya: benar
    • SameSite: LaxMode

Tangkapan skrin daripada tab rangkaian menunjukkan bahawa kuki sememangnya dihantar semula dalam pengepala respons.

Penyelesaian

Kunci untuk menyelesaikan isu ini terletak pada API Ambil bendera kelayakan. Apabila membuat permintaan pengambilan yang menjangkakan kuki dalam respons, adalah penting untuk menetapkan kelayakan: "termasuk".

Kod Diedit:

fetch(`${url}/login`, {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
    },
    credentials: "include", // This line has been added
    body: JSON.stringify({
        email: userDetails.email,
        password: userDetails.password,
    }),
}).then((response) => { ...

Dengan menetapkan kelayakan kepada "termasuk", penyemak imbas memahami bahawa ia harus menerima dan menyimpan kuki yang disertakan dalam respons. Konfigurasi ini memastikan bahawa penyemak imbas menyimpan kuki dengan betul dan menyediakannya untuk permintaan seterusnya.

Atas ialah kandungan terperinci Mengapa Pelayar Saya Tidak Menyimpan Kuki Ditetapkan oleh Pelayan My Go dalam Apl React?. 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