Ich verbrachte fast den ganzen Tag damit, herauszufinden, warum Axios meine Daten im falschen Format sendete, bis ich diesen http://stackoverflow.com/questions/31756756/axios-http-client-how-to-construct-http-post- fand.
axios.post(
'/api/v1/auth/login',
querystring.stringify({ // <-- this is what fixed it. JSON.stringify didn't help here
user_id: this.state.user_id,
password: this.state.password,
_csrf: result.data.csrfToken
}),
{
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
.then((res) => {
if (res.data && res.data) {
console.log('here')
}
})
.catch((err) => {
console.log(err);
});
Ich bin jedoch der Meinung, dass Axios sich darum kümmern sollte.
Es gibt bereits eine Anleitung in der Readme, daher sollte es recht einfach gewesen sein, die Antwort zu finden:
https://github.com/mzabriskie/axios#using -applicationx-www-form-urlencoded-format
Ob Axios sich automatisch darum kümmern soll oder nicht, ist keine Frage, die ich beantworten muss, aber der Hauptfokus der Bibliothek liegt auf dem Senden von JSON, also wird sie für diesen Anwendungsfall optimiert, denke ich.
Oh, danke für diesen Link. Ich habe es vorher nicht gesehen.
Sie können params
verwenden, um Abfragezeichenfolgen anzugeben.
// `params` are the URL parameters to be sent with the request
// Must be a plain object or a URLSearchParams object
params: {
ID: 12345
},
Hilfreichster Kommentar
Sie können
params
verwenden, um Abfragezeichenfolgen anzugeben.