ssm框架页面报400 bad requst错误
其他问答
1
页面代码如下
<head> <meta charset="UTF-8"> <title>注册页面</title> <link rel="stylesheet" href="practice/css/register.css" /> </head> <body> <div > <div > <div >注册</div> <form method="post" name ="form" id="form" > <input type="text" id="username" name="username" placeholder="请输入账号"/> <input type="password" id="password" name="password" placeholder="请输入密码"/> <input type="password" name="repassword" id="repassword" placeholder="请再次确认密码"/> <input type="text" id="phon" name="phon" placeholder="请输入电话号码"/> <input type="text" id="name" name="name" placeholder="请输入你的姓名"/> <input type="text" id="eamil" name="eamil" placeholder="请输入你的邮箱"/> <select id="sex" name="sex" > <option>---请选择你的性别---</option> <option>男</option> <option>女</option> </select> <input type="submit" value="注册" onclick="register()"/> </form> <div > 已有账号?<a href="Login.html">登录</a> </div>
Ajax代码如下:
function register() {
var username=$("#username");
var password=$("#password");
var repassword=$("#repassword");
var phon=$("#phon");
var name=$("#name");
var eamil=$("#eamil");
var sex=$("#sex");
alert("123");
$.ajax({
url:"user/register",
type:"post",
data:JSON.stringify({
username:username,
password:password,
repassword:repassword,
phon:phon,
name:name,
eamil:eamil,
sex:sex
}),
contentType:"application/json;charset=utf-8",
dataType:"json",
success:function (data) {
var user=data;
if (user>0){
alert("注册成功");
window.location.href="Login.html";
}else {
alert("注册失败");
}
},
error:function (XMLHttpRequest) {
alert("error"+XMLHttpRequest.responseText);
}
})
}
javascript error错误如下 error
HTTP Status 400 -
type Status report
message
description The request sent by the client was syntactically incorrect.
Apache Tomcat/7.0.37
```
-
原因: 1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致 或 前端提交的参数跟后台需要的参数个数不一致,导致无法封装; 2)前端提交的到后台的数据应该是json字符串类型,而前端没有将对象转化为字符串类型; 解决方案: 1)对照字段名称,类型保证一致性 2)使用stringify将前端传递的对象转化为字符串 data: JSON.stringify(param) ;
function register() { var username=$("#username").val(); var password=$("#password").val(); var repassword=$("#repassword").val(); var phon=$("#phon").val(); var name=$("#name").val(); var eamil=$("#eamil").val(); var sex=$("#sex").val(); alert("123"); $.ajax({ url:"user/register", type:"post", data:JSON.stringify({ username:username, password:password, repassword:repassword, phon:phon, name:name, eamil:eamil, sex:sex }), contentType:"application/json;charset=utf-8", dataType:"json", success:function (data) { var user=data; if (user>0){ alert("注册成功"); window.location.href="Login.html"; }else { alert("注册失败"); } }, error:function (XMLHttpRequest) { alert("error"+XMLHttpRequest.responseText); } }) }
-
// 明显错误 var username=$("#username"); var password=$("#password"); var repassword=$("#repassword"); var phon=$("#phon"); var name=$("#name"); var eamil=$("#eamil"); var sex=$("#sex"); // 正确写法 var username=$("#username").val(); var password=$("#password").val(); var repassword=$("#repassword").val(); var phon=$("#phon").val(); var name=$("#name").val(); var eamil=$("#eamil").val(); var sex=$("#sex").val();
发表回复