Heim > Artikel > Backend-Entwicklung > Warum speichert mein Browser keine Cookies von meinem Go-Backend, es sei denn, ich gebe „Anmeldeinformationen: „include'' an?
Bei dem Versuch, eine React-Anwendung mit einem Go-Backend zu erstellen, wird bei der Antwort einer Anfrage unter Verwendung von http.cookie ein Cookie gesetzt . Trotzdem kann der Browser das Cookie weiterhin nicht speichern. Dieses Problem ist sowohl in Chrome als auch in Firefox aufgetreten.
Bei näherer Betrachtung wurde festgestellt, dass das Attribut „Anmeldeinformationen“ in der Fetch-API-Anfrage fehlt, die eine Antwort mit einem Cookie erwartet. Durch die Einbindung von „Credentials: „include““ in die Anfrage kann der Browser das aus der Antwort erhaltene Cookie speichern.
fetch(`${url}/login`, { method: "POST", headers: { "Content-Type": "application/json", }, credentials: "include", // Added parameter body: JSON.stringify({ email: userDetails.email, password: userDetails.password, }), }).then((response) => { ...
Diese Offenbarung unterstreicht die Bedeutung der Einstellung von „Credentials“ auf „include“. Anfragen, die Cookies in der Antwort erwarten. Das Fehlen dieses Attributs verhindert, dass der Browser das Cookie speichert, was zu dem oben genannten Problem führt.
Das obige ist der detaillierte Inhalt vonWarum speichert mein Browser keine Cookies von meinem Go-Backend, es sei denn, ich gebe „Anmeldeinformationen: „include'' an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!