APIs (Application Programming Interfaces) spielen eine entscheidende Rolle. Sie ermöglichen es Anwendungen, mit externen Diensten zu kommunizieren, Daten abzurufen und verschiedene Aufgaben auszuführen. Eine beliebte Bibliothek für das Erstellen von HTTP-Anfragen in JavaScript ist Axios.
In diesem Blogbeitrag werden wir uns eingehend mit der Verwendung von Axios befassen, um GET-Anfragen mit Body und Headern zu erstellen. Also schnappen Sie sich Ihr Lieblingsgetränk und lassen Sie uns eintauchen!
Was ist Axios
Axios ist ein Promise-basierter HTTP-Client für den Browser und Node.js. Es vereinfacht das Erstellen von HTTP-Anfragen, die Verarbeitung von Antworten und die Verwaltung von Fehlern. Egal, ob Sie eine Single-Page-Anwendung oder ein serverseitiges Projekt erstellen, Axios steht Ihnen zur Seite.

Warum Axios verwenden und wie man es installiert?
- Saubere Syntax: Axios bietet eine saubere und intuitive Syntax für das Erstellen von Anfragen.
- Promises: Axios gibt Promises zurück, wodurch die Handhabung asynchroner Operationen vereinfacht wird.
- Browser- und Node.js-Kompatibilität: Es funktioniert nahtlos in beiden Umgebungen.
- Interceptors: Sie können Anfragen und Antworten abfangen und benutzerdefinierte Logik hinzufügen.
Sie können Axios mit npm oder yarn installieren. So installieren Sie es:
Mit npm:
$ npm install axios
Mit bower:
$ bower install axios
Mit yarn:
$ yarn add axios
Mit jsDelivr CDN:
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
Mit unpkg CDN:
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

Welchen Body und Header können Sie mit GET-Anfragen verwenden?
Beim Erstellen einer GET-Anfrage mit Axios enthält die HTTP-Spezifikation typischerweise keinen Anfragetext. Es gibt jedoch Szenarien, in denen Sie möglicherweise Daten zusammen mit Ihrer GET-Anfrage senden müssen. Lassen Sie uns untersuchen, wie Sie dies erreichen können:
Query-Parameter (URL-Parameter):
- Anstatt Daten im Anfragetext einzufügen, können Sie sie als Query-Parameter in der URL übergeben.
- Verwenden Sie die
params
-Eigenschaft im Axios-Konfigurationsobjekt, um Daten als Query-Parameter zu senden.
Beispiel:
const data = {
param1: 'value1',
param2: 'value2',
};
axios.get('https://api.example.com/resource', { params: data })
.then((response) => {
console.log('Data received:', response.data);
})
.catch((error) => {
console.error('Error fetching data:', error.message);
});
- Auf der Serverseite können Sie auf diese Parameter mit
req.query.param1
undreq.query.param2
zugreifen.
Header:
- Header sind für die Authentifizierung, Autorisierung und andere Zwecke unerlässlich.
- Sie können benutzerdefinierte Header mithilfe der
headers
-Eigenschaft im Axios-Konfigurationsobjekt festlegen.
Beispiel:
const config = {
headers: {
Authorization: 'Bearer YOUR_ACCESS_TOKEN',
'Custom-Header': 'Custom Value',
},
};
axios.get('https://api.example.com/protected-resource', config)
.then((response) => {
console.log('Protected data:', response.data);
})
.catch((error) => {
console.error('Error fetching protected data:', error.message);
});
- Ersetzen Sie
'Bearer YOUR_ACCESS_TOKEN'
durch Ihr tatsächliches Token.
Vermeiden Sie das Senden von Body in GET-Anfragen:
- Obwohl es technisch möglich ist, einen Body in einer GET-Anfrage mit Axios zu senden, gilt dies im Allgemeinen als schlechte Praxis.
- Die HTTP-Spezifikation definiert keinen Anfragetext für GET-Anfragen.
- Wenn Sie Daten senden müssen, verwenden Sie vorzugsweise Query-Parameter oder andere geeignete Methoden.
Denken Sie daran, dass die Einhaltung bewährter Verfahren einen robusten und wartbaren Code gewährleistet. Wenn Sie feststellen, dass Sie komplexe Daten mit einer GET-Anfrage senden müssen, sollten Sie Ihr Design neu bewerten, um sicherzustellen, dass es mit den Standardkonventionen übereinstimmt.
Wie man Header und Body in Axios GET-Anfragen hinzufügt und sendet?
Bei der Verwendung von Axios zum Erstellen von GET-Anfragen ist es wichtig zu verstehen, dass die HTTP-Spezifikation typischerweise keinen Anfragetext für GET-Anfragen enthält. Sie können jedoch weiterhin zusätzliche Daten mithilfe von Query-Parametern und Headern senden. Hier erfahren Sie, wie Sie Header hinzufügen und senden und wie Sie mit Daten in einer GET-Anfrage arbeiten:
Hinzufügen von Headern
Um Ihrer GET-Anfrage in Axios Header hinzuzufügen, können Sie ein Konfigurationsobjekt mit einer headers
-Eigenschaft übergeben. Hier ist ein Beispiel:
const axios = require('axios');
const config = {
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Custom-Header': 'Custom Value'
}
};
axios.get('https://api.example.com/data', config)
.then((response) => {
// Handle the response
})
.catch((error) => {
// Handle any errors
});
Senden von Daten mit GET-Anfragen
Obwohl das Senden eines Bodys mit einer GET-Anfrage nicht Standard ist und im Allgemeinen nicht empfohlen wird, können Sie Daten als Query-Parameter mithilfe der params
-Eigenschaft im Axios-Konfigurationsobjekt senden:
const params = {
key1: 'value1',
key2: 'value2'
};
axios.get('https://api.example.com/data', { params })
.then((response) => {
// Handle the response
})
.catch((error) => {
// Handle any errors
});
Auf der Serverseite sind diese Daten über request.query
und nicht über request.body
zugänglich. Es ist auch erwähnenswert, dass diese Parameter an die URL angehängt werden.

Häufige Fehler und Tipps zur Fehlerbehebung
Bei der Arbeit mit Axios zum Erstellen von GET-Anfragen mit Body und Headern können Entwickler auf einige häufige Fehler stoßen. Hier sind einige Tipps zur Fehlerbehebung, die Ihnen helfen, diese Probleme zu lösen:
Häufige Fehler
1. Fehler: Axios get ist keine Funktion
- Ursache: Dieser Fehler tritt normalerweise auf, wenn ein Problem mit dem Axios-Import vorliegt oder wenn versucht wird,
.get
für eine nicht definierte Variable aufzurufen. - Lösung: Stellen Sie sicher, dass Axios korrekt importiert wird und dass Sie
.get
für die Axios-Instanz aufrufen.
2. Fehler: Netzwerk-Fehler
- Ursache: Dieser Fehler kann aufgrund von CORS-Problemen, Netzwerkverbindungsproblemen oder serverseitigen Fehlern auftreten.
- Lösung: Überprüfen Sie die Netzwerkverbindung, stellen Sie sicher, dass der Server ausgeführt wird, und überprüfen Sie, ob CORS auf dem Server korrekt konfiguriert ist.
3. Fehler: Anfrage fehlgeschlagen mit Statuscode 4xx/5xx
- Ursache: Diese Fehler sind Antworten vom Server, die clientseitige Probleme (4xx) oder serverseitige Probleme (5xx) anzeigen.
- Lösung: Überprüfen Sie bei 4xx-Fehlern die Anfrage-URL, -Header und -Parameter. Untersuchen Sie bei 5xx-Fehlern die Serverprotokolle auf weitere Details.
4. Fehler: Timeout
- Ursache: Die Anfrage dauerte länger als das in Axios angegebene
timeout
. - Lösung: Erhöhen Sie den
timeout
-Wert in der Axios-Anfragekonfiguration oder optimieren Sie die Antwortzeit des Servers.
5. Fehler: Ungültige URL
- Ursache: Die in der Axios-Anfrage angegebene URL ist falsch oder fehlerhaft.
- Lösung: Überprüfen Sie die Richtigkeit der URL und stellen Sie sicher, dass sie ordnungsgemäß codiert ist.
6. Fehler: Header abgelehnt
- Ursache: Der Server kann Anfragen mit bestimmten Headern aufgrund von Sicherheitsrichtlinien ablehnen.
- Lösung: Überprüfen Sie die gesendeten Header und stellen Sie sicher, dass sie dem erwarteten Format und den Werten des Servers entsprechen.
7. Fehler: Antwort nicht empfangen
- Ursache: Der Server hat keine Antwort gesendet, möglicherweise aufgrund eines Absturzes oder Timeouts.
- Lösung: Überprüfen Sie den Serverstatus und die Protokolle, um potenzielle Probleme zu identifizieren.
Erweiterte Fehlerbehebung:
- Axios Interceptors: Verwenden Sie Axios-Interceptors, um Anfragen und Antworten zum Debuggen zu protokollieren.
- axios-retry: Implementieren Sie das Paket
axios-retry
, um vorübergehende Fehler automatisch zu behandeln. - Debugging-Tools: Verwenden Sie Debugging-Tools, um Ihren Code schrittweise durchzugehen und zu identifizieren, wo Probleme auftreten.
Eine effektive Fehlerbehebung beinhaltet einen systematischen Ansatz zur Identifizierung des Problems, zum Verständnis der Fehlermeldungen und zur Anwendung der entsprechenden Lösungen. Wenn Sie diese Tipps befolgen, sollten Sie in der Lage sein, die meisten Probleme zu lösen, die beim Erstellen von GET-Anfragen mit Axios auftreten.
So senden Sie GET-Anfragen mit Body und Header mit Apidog
Apidog ist ein leistungsstarkes Tool, mit dem Sie GET-Anfragen mit Body- und Header-Parametern einfacher senden können.
Senden von GET-Anfragen mit Header:
Öffnen Sie Apidog und klicken Sie auf die Schaltfläche Neue Anfrage.

Geben Sie die URL des API-Endpunkts ein, an den Sie eine GET-Anfrage senden möchten, klicken Sie dann auf die Registerkarte Header und wählen Sie die gewünschte Option aus. In diesem Beispiel wählen wir Autorisierung aus.

Fügen Sie Ihre Anmeldeinformationen hinzu (die tatsächlichen Daten, die für die Serverüberprüfung benötigt werden, z. B. Benutzername/Passwort, Token, Hash).

Senden Sie die Anfrage und analysieren Sie die Antwort.

Apidog erleichtert die Arbeit mit Autorisierungsheadern, sodass Sie Ihre APIs selbstbewusst testen können!
Senden von GET-Anfragen mit Body:
Das Testen von GET-Anfragen mit einem Body kann etwas knifflig sein, da die HTTP-Spezifikation GET-Anfragen traditionell als idempotent betrachtet (was bedeutet, dass sie den Zustand des Servers nicht ändern). Einige APIs erlauben jedoch möglicherweise ein benutzerdefiniertes Verhalten, bei dem Sie einen Anfragetext auch in GET-Anfragen einfügen können.
Wechseln Sie zur Registerkarte „Body“ und wählen Sie die gewünschte Body-Spezifikation aus.

Senden Sie die Anfrage und überprüfen Sie, ob der Antwortstatuscode ok ist.

Denken Sie daran, dass das Testen von GET-Anfragen mit einem Body möglicherweise nicht üblich ist, es aber wichtig ist, das Verhalten Ihrer API zu verstehen und eine gründliche Prüfung für alle Szenarien sicherzustellen. Apidog kann diesen Prozess vereinfachen, indem es Tools für API-Design, Debugging und Tests bereitstellt.
Verwenden von Apidog zur automatischen Generierung von Axios-Code
Mit Apidog können Sie auch automatisch Axios-Code zum Erstellen von HTTP-Anfragen generieren. So verwenden Sie Apidog, um Axios-Code zu generieren:
- Geben Sie alle Header oder Query-String-Parameter ein, die Sie mit der Anfrage senden möchten, und klicken Sie dann auf die Schaltfläche Code generieren.

2. Kopieren Sie den generierten Axios-Code und fügen Sie ihn in Ihr Projekt ein.

Best Practices für Axios GET-Anfragen-Parameter
Um die effektive Verwendung von Parametern in Ihren Axios GET-Anfragen sicherzustellen, sollten Sie die folgenden Best Practices berücksichtigen:
- Wählen Sie beschreibende Parameternamen: Verwenden Sie aussagekräftige Namen für Ihre Parameter, um die Lesbarkeit und Wartbarkeit Ihres Codes zu verbessern. Dies erleichtert es anderen Entwicklern (einschließlich Ihres zukünftigen Ichs), den Zweck jedes Parameters zu verstehen.
- Validieren und bereinigen Sie die Benutzereingabe: Wenn Sie Benutzereingaben als Parameter akzeptieren, validieren und bereinigen Sie die Werte, um potenzielle Sicherheitslücken wie SQL-Injection oder Cross-Site-Scripting (XSS) zu verhindern. Verwenden Sie serverseitige Validierungs- und Bereinigungstechniken, um die Sicherheit Ihrer Anwendung zu gewährleisten.
- Behandeln Sie Standard- oder optionale Parameter: In einigen Fällen möchten Sie möglicherweise Standard- oder optionale Parameter in Ihre GET-Anfragen aufnehmen. Um dies zu handhaben, können Sie Parameter basierend auf bestimmten Kriterien bedingt zum
params
-Objekt hinzufügen. Auf diese Weise können Sie einen Fallback-Wert bereitstellen, wenn ein Parameter nicht explizit angegeben wird. - Berücksichtigen Sie die Paginierung und begrenzen Sie die Daten: Wenn Sie mit einem großen Datensatz arbeiten, sollten Sie die Implementierung der Paginierung in Betracht ziehen, um die Datenmenge zu begrenzen, die in jeder Anfrage abgerufen wird. Dies trägt dazu bei, die Leistung zu verbessern und die Last sowohl auf dem Client als auch auf dem Server zu reduzieren. Sie können Parameter wie
page
undlimit
einfügen, um den Paginierungsprozess zu steuern.
Fazit
Das Erstellen von Axios API GET-Anfragen mit Body und Headern ist eine entscheidende Fähigkeit für jeden Entwickler, der mit APIs arbeitet. Dieser Blogbeitrag hat Ihnen eine umfassende Anleitung dazu gegeben. Wir haben alles behandelt, von der Einrichtung von Axios über die Erstellung der GET-Anfrage bis hin zur Verarbeitung von Antworten und Fehlern.
Mit der Leistungsfähigkeit von Apidog können Sie Header- und Body-Parameter ganz einfach ändern. Mit diesem Wissen können Sie jetzt selbstbewusst mit APIs interagieren, Daten effizient abrufen und dynamischere und reaktionsfähigere Anwendungen erstellen. Denken Sie daran, dass der Schlüssel zur Beherrschung dieser Konzepte die Übung ist. Zögern Sie also nicht, Apidog zu erkunden und mit diesen Anfragen zu beginnen! Viel Spaß beim Codieren!