Heim >Web-Frontend >js-Tutorial >Wie kann ich Cookies automatisch in Axios-Anfragen einbinden?

Wie kann ich Cookies automatisch in Axios-Anfragen einbinden?

Barbara Streisand
Barbara StreisandOriginal
2024-11-27 08:08:10353Durchsuche

How Can I Automatically Include Cookies in Axios Requests?

Automatisierung der Cookie-Einbindung in Axios-Anfragen

Wenn Anfragen von einem Client an einen Server mit Axios gestellt werden, ist es oft notwendig, darin eingebettete Cookies zu senden diese Anfragen. Ohne manuelles Hinzufügen kann es zu Schwierigkeiten beim Zugriff auf diese Cookies in Ihrem Servercode kommen, wie das Beispiel zeigt, bei dem req.headers und req.cookies trotz Verwendung der cookieParser-Middleware in Express.js leer blieben.

Zu Um dieses Problem zu beheben, bietet Axios die Eigenschaft withCredentials an. Durch die Aktivierung dieser Eigenschaft wird sichergestellt, dass Anmeldeinformationen, einschließlich Cookies, automatisch in alle von Axios gestellten Anfragen einbezogen werden. Dieses Verhalten ahmt das Standardverhalten des XMLHttpRequest-Objekts nach und ermöglicht die sichere Übertragung von Cookies über verschiedene Domänen hinweg.

Hier gibt es drei Möglichkeiten, withCredentials zu konfigurieren:

  1. Aktivieren Sie es für alle Axios Anfragen:
axios.defaults.withCredentials = true;
  1. Aktivieren Sie es für bestimmte Anfragen:
axios.get(BASE_URL + '/todos', { withCredentials: true });
  1. Erstellen Sie eine Axios-Instanz mit withCredentials aktiviert:
const instance = axios.create({
   withCredentials: true,
   baseURL: BASE_URL
});
instance.get('/todos');

Durch die Einstellung von withCredentials auf „true“ schließt Axios automatisch Cookies in alle Anfragen ein, wodurch manuelle Eingriffe überflüssig werden und eine nahtlose Authentifizierung und Nachverfolgung über alle Anfragen hinweg sichergestellt wird.

Das obige ist der detaillierte Inhalt vonWie kann ich Cookies automatisch in Axios-Anfragen einbinden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn