Ich möchte Daten in der POST-Anforderung buchen. Ich habe ein Login-Formular, das ich in handleLoginButtonClick mache eine POST-Anfrage wie dieser ichÜbergeben von Daten in POST-Anforderung
handleLoginButtonClick() {
let token;
var settings = {
"async": true,
"crossDomain": true,
"url": "https://trigger-backend.appspot.com/auth/login/",
"method": "POST",
"credentials": 'include',
"headers": {
"content-type": "application/x-www-form-urlencoded",
},
"data": {
"password": JSON.stringify(document.getElementById("password").value),
"username": JSON.stringify(document.getElementById("username").value)
},
success: function(data, textStatus, jQxhr){
// alert("success");
},
}
$.ajax(settings).done((response) => {
token = JSON.stringify(response.auth_token)
this.context.router.push('/app')
});
So
render(){
return (
<div className="LoginPage">
<div className="login-page">
<div className="form">
<form className="login-form">
<input id="username" type="username" placeholder="username"/>
<input id="password" type="password" placeholder="password"/>
<p className="message">Not registered? <a href="#">Request Username and Password</a></p>
</form>
<button onClick={this.handleLoginButtonClick.bind(this)}>login</button>
</div>
</div>
</div>
);
}
sieht bin derzeit einschließlich der Daten wie diese
"data": {
"password": JSON.stringify(document.getElementById("password").value),
"username": JSON.stringify(document.getElementById("username").value)
}
Aber api gibt mir ein 400 Fehler wie folgt
Aber zur gleichen Zeit, wenn ich die Daten wie diese passieren dann funktioniert es
"data": {
"password": "apurv",
"username": "Apurv"
},
, was das Problem hier ist. Beide sollten gleich sein, oder?
Es hat funktioniert. Vielen Dank. – ApurvG
Aber ein Zweifel. "Daten": { "Passwort": "Apurv", "Benutzername": "Apurv" }, ich schickte "Apurv" nur als Passwort. Aber das hat funktioniert. Warum? – ApurvG
Weil Sie es richtig gesendet haben: '" data ": {" password ":" apurv "," username ":" Apurv "}'. Auf der anderen Seite macht JSON stringify das: '" data ": {" password ":" \ "apurv \" "," username ":" \ "Apurv \" "}. Erkennst du den Unterschied? –