springboot怎么返回登录失败?

    • UserController
  • 方法:
    • BaseController
    • message是什么?
    • JsonResult

UserController

这是原来的UserController里的login:

@RequestMapping("login")public class UserController extends BaseController {@Autowiredprivate IUserService userService;@RequestMapping("reg")public JsonResult<Void> reg(User user) {userService.reg(user);return new JsonResult<>(OK);}public JsonResult<User> login(String username, String password, HttpSession session) {// 调用业务层方法执行登录User data = userService.login(username, password);// 将uid、username存入到session中session.setAttribute("uid", data.getUid());session.setAttribute("username", data.getUsername());// 向客户端响应return new JsonResult<>(OK, data);}

方法:

这是修改后的UserController里的login:

@RequestMapping("login")public JsonResult<User> login(String username, String password, HttpSession session) {// 调用业务层方法执行登录try {User data = userService.login(username, password);session.setAttribute("uid", data.getUid());session.setAttribute("username", data.getUsername());// 向客户端响应若成功 return new JsonResult<>(OK, data);}catch (Exception e) {// 向客户端响应若失败 return new JsonResult<>(ERROR,"账号或密码错误");}}


ERROR是什么?
因为
UserController 继承BaseController 所以在BaseController 里加

protected static final int ERROR= 500;

BaseController

public class BaseController {/*** 响应状态:成功*///reg.html "dataType" : "json", "success" : function(json) { if (json.state == 2000) { alert("登录成功!"); } else {alert("登录失败!");}protected static final int OK =2000;protected static final int ERROR= 500;

后台正常后,在前台配置jQuery数据

这是配置之前的:

<script type="text/javascript">$("#reg").click(function() {$.ajax({"url" : "/users/login","data" : $("#form-login").serialize(),"type" : "POST","dataType" : "json","success" : function(json) {if (json.state == 2000) {alert("登录成功!");} else {alert("登录失败!");}}}});});

这是配置之后的:

<script type="text/javascript">$("#reg").click(function() {$.ajax({"url" : "/users/login","data" : $("#form-login").serialize(),"type" : "POST","dataType" : "json","success" : function(json) {if (json.state == 2000) {alert("登录成功!");} else {if(json.state== 500){alert(json.message);}}}});});

在:

alert(json.message);

message是什么?


处理异常
//创建封装响应结果的JsonResult类中

JsonResult

//处理异常
//创建封装响应结果的JsonResult类:
public class JsonResult<T> {private Integer state;private String message;private T data;//this,get.set方法

这样在login.HTML中获取message

源码

问题: springboot返回登录失败相关推荐

  1. 接收表单中的用户名和密码,如果用户名和密码分别为“admin“和“123456“,则返回登录成功页面,否则返回登录失败页面。

    接收表单中的用户名和密码,如果用户名和密码分别为"admin"和"123456",则返回登录成功页面,否则返回登录失败页面.已知登录面如下: <form ...

  2. SpringBoot+Shiro+ehcache实现登录失败超次数锁定帐号

    文章目录 二.Controller层接收登录请求 三.自定义的Realm 四.密码验证器增加登录次数校验功能 五.ShiroConfig的配置类 六.EhCache 的配置 七.全局异常的配置 ### ...

  3. springboot+redis实现登录失败次数限制

    需求:为了防止枚举攻击,完成安全性测试扫描.先是保证账号和密码其一错误但返回错误一致,添加Referer拦截器,现在需要限制登录失败次数限制,本文做的是累计登录失败五次账号锁定3小时.(如果有一次登录 ...

  4. Springsecurity使用浏览器登录失败返回302(跨域问题),前后端分离

    问题: 在使用Springsecurity时使用postman访问登录失败能得到自定义错误信息401,但是使用浏览器访问的时候,当登录成功时能正常进入自定义配置类,但是失败是直接给浏览器返回一个状态码 ...

  5. springboot shiro ajax,SpringBoot Shiro 登录成功后返回json数据 shiro使用ajax登录

    老规矩,先上代码: protected boolean onLoginSuccess(AuthenticationToken token, Subject subject, ServletReques ...

  6. Springboot Vue Login(从零开始实现Springboot+Vue登录)

    实现前端后端分离,在 Github 上有一个很好的开源项目:mall,正所谓百看不如一练,自己动手实现了一个 Springboot+Vue 的登录操作,在此记录一下踩过的坑. 文章最后补充两端的 Gi ...

  7. 利用SpringBoot返回一个json对象

    基于SpringBoot如何返回一个json对象? 开发过程中,接口是必不可少的,那么提前约定数据格式就成了必不可少的步骤.一般情况下大家都是用json格式来传递数据,今天就用spring boot来 ...

  8. SpringBoot实现登录注册

    话不多说,一个小小登录注册的案例向你展示SpringBoot的魅力 1 设计数据库 1.1表结构 1.2属性 id自增主键,name非空约束,唯一约束,password 2 IDEA配置 2.1 po ...

  9. springboot项目登录+注册

    springboot 整合 mybatis + thymeleaf 登录注册 学习网址 springboot+jsp https://blog.csdn.net/qq_40205116/article ...

最新文章

  1. excel切片器_excel中的超级好用的筛选神器——切片器
  2. Python 执行js的2种解决方案-乾颐堂
  3. boost::mpi模块实现传输数据类型的骨架和内容的通信器的测试
  4. LeetCode: Merge k Sorted Lists
  5. 计算机专业410分能上哪些大学,2021年高考410分能报什么学校
  6. 无尽包围html5游戏在线玩,小团体激发潜能小游戏突破自我
  7. python如何制作一个工程软件_如何利用python制作一个解压缩软件-Go语言中文社区...
  8. 李彦宏数字人开场!百度在元宇宙产品“希壤”中办了一场大会,还说未来10年拥堵问题将被解决~...
  9. tkinter显示rtf文件
  10. GBDT梯度提升之二分类算法个人理解
  11. M2M、物联网应用开发的好助手——Wavecom Sierra 无线MODEM( GSM/GPRS/EDGE MODEM)
  12. #创新应用#豆果美食:贴心的美食专家!
  13. 计算机术语翻译(Term.)及缩写整理(Abbr.)
  14. Error launching IEDA-启动IDEA报错解决(创建JVM失败提示)
  15. 计算机提示存储空间不足怎么办,Win7软件提示"存储空间不足,无法处理此命令"怎么办...
  16. seo模拟点击软件_SEO快排
  17. 欧姆龙NJ/NX基于BaseNetwork Configuratore的 EIP通讯 方式
  18. Flex框架-甘特图开发
  19. C++ map和set
  20. 通过实例学习RobotFrameWork - 1

热门文章

  1. (一)导学(前端框架面试-聚焦Vue/React/Webpack)
  2. java视频流传输_目前在Web浏览器中流式传输实时视频的最佳做法?
  3. mysql值域_MySQL学习笔记(三)
  4. 初二下册计算机考试试题,2017下半年计算机等级考试二级Java模拟试题及答案(18)...
  5. mybatis和hibernate的一级、二级缓存
  6. Java 异常处理入门
  7. SpringBoot整合RabbitMQ测试
  8. OpenCV:Adaboost训练时数据扩增
  9. 人工机器:TM、VNM和NTM的内存机制
  10. 算法设计之—常用算法之-分支界定法