1. 发现问题
在项目开发时,遇到了这个问题
$.ajax({
async: false,
type: 'POST',
url: "/system/userLogin",
data: user,
dataType: 'json',
success: function (result) {
response = result;
},
error: function (result) {
alert('服务器异常');
}
});
前端ajax通过给定的url 的路径值进行工作,但一直进入权限拦截,打印路径如下
2022-05-10 21:09:58.250 INFO 3608 --- [nio-8080-exec-1] c.q.b.a.i.AuthorityInterceptor : 进入权限控制拦截器/system/system/userLogin
2022-05-10 21:09:58.251 INFO 3608 --- [nio-8080-exec-1] c.q.b.a.i.AuthorityInterceptor : 该请求无权限,已ajax方式返回提示,url=/system/system/userLogin
2022-05-10 21:10:00.017 INFO 3608 --- [ scheduling-1] c.q.base.schedule.admin.BackUpSchedule : 开始执行定时检查代码是否有更新!
发现进行寻址时,自动添加了上一层路径
2.解决办法
找到Controller,在userLogin添加注解 @ResponseBody
@RequestMapping("/system")
@Controller
@EnableAutoConfiguration
public class SystemController {
@PostMapping(value = "/userLogin")
@ResponseBody
public Response userLogin(@RequestParam("username")String userName,
@RequestParam("password")String userPassword){
log.info("进入userLogin的Controller");
return userService.userLogin(userName,userPassword);
}
}
3.结果展示
2022-05-10 21:16:45.971 INFO 14752 --- [nio-8080-exec-1] c.q.b.controller.admin.SystemController : 进入userLogin的Controller
|