【发布时间】:2018-04-25 21:25:09
【问题描述】:
您好,我正在通过 axios 尝试 reactjs POST 请求,但出现错误,我浏览了所有文档,但错误未解决。
这是我的错误:
未捕获(承诺中)错误:请求失败,状态码为 400 在 createError (eval at (bundle.js:4621), :15:15) 结算时(eval at (bundle.js:4615), :18:12) 在 XMLHttpRequest.handleLoad (eval at (bundle.js:4609), :77:7)
这是我的 Reactjs 代码:
import React from 'react';
import RaisedButton from 'material-ui/RaisedButton';
import TextField from 'material-ui/TextField';
import axios from 'axios';
const style = {
margin: 15,
marginLeft: 600
};
export default class Register extends React.Component {
constructor(props) {
super(props);
this.onSubmit=this.handleSubmit.bind(this);
}
handleSubmit(e) {
e.preventDefault();
var self = this;
var data = new FormData();
const payload = {
id: 111,
studentName: 'param',
age: 24,
emailId: 2
};
data.append("myjsonkey", JSON.stringify(payload));
axios('http://localhost:8083/students',{
method: 'POST',
body: data,
headers: {
// 'Authorization': `bearer ${token}`,
'Content-Type': 'application/json'
}
})
.then(function(response) {
return response.json()
}).then(function(body) {
console.log(body);
});
}
render() {
return (
<form onSubmit={this.onSubmit}>
<div style={style}>
<TextField ref='id'
hintText="Enter Student id"
floatingLabelText="id"
/>
<br/>
<TextField ref='sname'
hintText="Enter your Last Name"
floatingLabelText="StudentName"
/>
<br/>
<TextField ref='age'
hintText="Enter your Age"
floatingLabelText="age"
/>
<br/>
<TextField ref='emailId'
hintText="Enter your Email"
floatingLabelText="emailId"
/>
<br/>
<br/>
<input type="submit" />
</div>
</form>
);
}
}
【问题讨论】:
-
检查这个:stackoverflow.com/questions/44617825/…,在你的实现中数据也是用
body发送的,而它应该用data发送
标签: javascript java reactjs axios