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
Lepaskan: 2024-12-01 13:02:09
asal
682 orang telah melayarinya

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) => { ...
Salin selepas log masuk

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!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan