有个问题请教一下大家:SSM搭建管理系统的课程第7课,登录页面的登录表单,提交的时候,ajax函数直接跳error,会是什么原因导致的?看了好久不知道问题在哪儿,麻烦懂的朋友指点一下,谢谢啦!
这是Controller类
有个问题请教一下大家:SSM搭建管理系统的课程第7课,登录页面的登录表单,提交的时候,ajax函数直接跳error,会是什么原因导致的?看了好久不知道问题在哪儿,麻烦懂的朋友指点一下,谢谢啦!
这是Controller类
看后端控制台的异常
还有这种问题,尽量别截图。贴代码比较好。
好的好的。
代码如下:
package controller;
import common.Result;
import common.ResultGenerator;
import entity.AdminUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import services.AdminUserService;
/**
@Author haydn
@create 2019/9/9 2:18
*/
@RequestMapping("/users")
@RestController
public class AdminUserController {
@Autowired
private AdminUserService adminUserService;
@RequestMapping(value="/login",method = RequestMethod.POST)
public Result login(@RequestBody AdminUser user){
System.out.println(user);
Result result = ResultGenerator.genFailResult(“登录失败”);
if(StringUtils.isEmpty(user.getUsername()) || StringUtils.isEmpty(user.getUsername())){
result.setMessage(“请填写登录信息”);
}
AdminUser loginUser = adminUserService.updateTokenAndLogin(user.getUsername(),user.getPassword());
if(loginUser != null){
result = ResultGenerator.genSuccessResult(loginUser);
}
return result;
}
}
下面是js代码
/**
/**
/**
/**
function login() {
alert(“进入login函数了!” + $(’#username’).val() + $(’#password’).val());
var username = $(’#username’).val();
var password = $(’#password’).val();//#对应的是id选择器
if (isNull(username)) {
showErrorInfo("请输入用户名!");
return;
}
if (!validUserName(username)) {
showErrorInfo("请输入正确的用户名!")
return;
}
if (isNull(password)) {
showErrorInfo("请输入密码!");
return;
}
if (!validPassword(password)) {
showErrorInfo("请输入正确的密码!");
return;
}
var data = {"username": username, "password": password};//这是一个json格式的对象
alert(data.username + "----brfore ajax");
$.ajax({//这里是jQuery的ajax对象方法
type: "POST",
dataType: "json",
url: "/users/login",//这个什么意思不明白??? -- 通过这个地址映射到Controller方法
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
success: function (result) {
alert(data.username + "----in ajax success");
if (result.resultCode == 200) {
$('.alert-danger').css("display", "none");
setCookie("token", result.data.userToken);
alert("登录成功");
window.location.href = "/";
}
;
if (result.resultCode == 500) {
showErrorInfo("登录失败!请重新确认账号密码!");
return;
}
},
error: function () {
alert(data.username + "----in ajax error");
alert("error");
$('.alert-danger').css("display", "none");
showErrorInfo("接口异常,请联系管理员");
return;
}
});
}
/**
/**
/**
/**
/**
后端控制台没有输出任何提示信息
是不是数据库没连接上。
数据库可以连接。在同一个项目里还有另一个控制器,连接了同一个数据库的另外一张表,可以请求到数据并且传给前端浏览器
是web.xml的配置文件里路径弄错了,配置成了/*.do,应该是 / 就好了。
然后mapper文件里面的username字段中间错写一个横杠。
没有单元测试,这种问题就好难看出来。
谢谢你啦!