Ich versuche, eine Verbindung mit der Yelp-API herzustellen. Verwenden von Vue und Axios. Ich kann keine Verbindung herstellen. Ich erhalte Fehler:Wie kann man einen "preflight hat ungültigen HTTP-Statuscode 500" Fehler?
XMLHttpRequest
cannot load https://api.yelp.com/v3/businesses/search?location=sarnia&limit=50 . Response for preflight has invalid HTTP status code 500
Hier ist mein Code:
new Vue({
el: '#app',
data: {
businesses: []
},
// Logic Methods
mounted() {
var app = this;
var url = 'https://api.yelp.com/v3/businesses/search?location=sarnia&limit=50';
var config = {
headers: {
"Cache-Control": "no-cache",
'Content-Type': 'application/x-www-form-urlencoded',
"Access-Control-Allow-Origin": '*',
"Access-Control-Allow-Methods": 'GET, POST, PATCH, PUT, DELETE, OPTIONS',
"Access-Control-Allow-Headers": 'Origin, Content-Type, X-Auth-Token, Accept',
"Access-Control-Max-Age": "1728000",
'Authorization': 'MyAccessCode'
}
};
axios.get(url, config)
.then(function(response) {
console.log(response.headers);
console.log(response);
app.businesses = response.data
})
.catch(function(error) {
app.businesses = "ERROR"
})
}
})
Ich gehe davon aus das etwas mit CORS zu tun ist, aber ich bin nicht sicher, wie diese zu lösen. Ich habe das CORS Chrome-Plugin aktiviert und habe alle Header. Kann ich einen Einblick bekommen, was das Problem sein kann und wie es behoben werden kann? Ist das etwas für yelp?
Danke für die detaillierte Antwort! Ich habe in Postman nur mit dem Autorisierungsheader getestet und es funktioniert. Ich kann es nur durch meine Anfrage im Browser nicht tun. Ich erinnere mich, dass ich dieses Problem hatte, das ich nicht lösen konnte, als ich angular 2 verwendete. – Lewis
In Ihren Browser-Debug-Tools können Sie unter Netzwerk/Anfragen detaillierte Informationen über die Anfragen sehen, die tatsächlich gemacht und die Header gesetzt werden. Sieh nach, ob es irgendwas gibt, das anrüchig ist (z.B. gegen den Fall von Postman, wo es funktioniert). Sie können sogar eine direkte/rohe Axaj-Anfrage anstelle von Axios versuchen, um zu sehen, ob das der Schuldige ist. –
Bisher habe ich durch Hinzufügen von '[]' um die Konfiguration herum jetzt einen 401 Fehler bekommen. – Lewis