Post request mit Authorization Header funktioniert auf Emulator nicht?
Hey! Ich sitze bereits seit einiger Zeit an diesem Problem fest und würde mich sehr über jede Art von Hilfe freuen. Warum erhalte ich bei der Verwendung der folgenden Abfrage in meiner React Native-Anwendung auf dem Android-Emulator immer den Code 404 zurück, obwohl ich mit dem richtigen Header in Postman den richtigen code also 200 zurück bekomme?
Zur info:
Jede andere Abfrage funktioniert vom Emulator aus nur nicht die mit dem Header.
Wenn ich es über den Browser versuche ist zu sehen das er zugriff drauf hat da er Unauthorized zurückgibt wie im Screenshot zu sehen.
LG
fetch(requestUrl, {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer " + accessToken,
},
})
.then((response) => {
if (response.status === 200) {
console.log("Response status is 200");
} else {
console.log("Response status is " + response.status);
}
})
.catch((error) => {
console.error("Error occurred:", error);
});
1 Antwort
Der HTTP Status 404 deutet ja darauf hin, dass die URL nicht korrekt ist bzw. das Dokument nicht gefunden wird. Hast du das überprüft und bist du 100%ig sicher, dass der Emulator Zugriff auf diese URL hat?
Der Emulator läuft ja sicherlich in einer Sandbox und hat möglicherweise keinen Zugriff auf lokale Dienste auf dem Rechner. Um Zweifelsfall würde ich den lokalen Dienst mal über ngrok freigeben und im Emulator über das Internet ansprechen.
Ich weiß nicht wie das im Android-Emulator funktioniert aber beim iPhone-Emulator kann ich mir über die Web-Konsole von Safari (auf dem Rechner) auch die Konsole für die Webview anzeigen lassen und so auch Fehlermeldungen auslesen. Sicherlich bietet Google so was in der Art auch mit Chrome an.
Ich bin mir sicher da Abfragen auf die gleiche Adresse ohne Authorization funktionieren das ist ja das komische. Ich habe auch schon die requestUrl ausgegeben und direkt mit Postman getestet die stimmt. Ich teste mal trotzdem das mit ngrok.