1.

response.setCharacterEncoding("UTF-8");response.setContentType("application/json");PrintWriter out = response.getWriter();RespBean bean = RespBean.error("未登录,请登录");bean.setCode(401);out.write(new ObjectMapper().writeValueAsString(bean));out.flush();out.close();

2.登陆拦截器中的使用

package com.mszlu.blog.handler;import com.alibaba.fastjson.JSON;
import com.mszlu.blog.dao.pojo.SysUser;
import com.mszlu.blog.service.LoginService;
import com.mszlu.blog.vo.ErrorCode;
import com.mszlu.blog.vo.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;@Component
@Slf4j
public class LoginInterceptor implements HandlerInterceptor {@Autowiredprivate LoginService loginService;@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//在执行controller方法(Handler)之前进行执行/*** 1. 需要判断 请求的接口路径 是否为 HandlerMethod (controller方法)* 2. 判断 token是否为空,如果为空 未登录* 3. 如果token 不为空,登录验证 loginService checkToken* 4. 如果认证成功 放行即可*///如果不是我们的方法进行放行if (!(handler instanceof HandlerMethod)){//handler 可能是 RequestResourceHandler springboot 程序 访问静态资源 默认去classpath下的static目录去查询return true;}String token = request.getHeader("Authorization");log.info("=================request start===========================");String requestURI = request.getRequestURI();log.info("request uri:{}",requestURI);log.info("request method:{}",request.getMethod());log.info("token:{}", token);log.info("=================request end===========================");if(StringUtils.isBlank(token)){Result result = Result.fail(ErrorCode.NO_LOGIN.getCode(), "未登录");//设置浏览器识别返回的是jsonresponse.setContentType("application/json;charset=utf-8");//https://www.cnblogs.com/qlqwjy/p/7455706.html response.getWriter().print()//SON.toJSONString则是将对象转化为Json字符串response.getWriter().print(JSON.toJSONString(result));return false;}SysUser sysUser = loginService.checkToken(token);if (sysUser == null){Result result = Result.fail(ErrorCode.NO_LOGIN.getCode(), "未登录");response.setContentType("application/json;charset=utf-8");response.getWriter().print(JSON.toJSONString(result));return false;}//是登录状态,放行//登录验证成功,放行//我希望在controller中 直接获取用户的信息 怎么获取?return true;}
}

通过response返回json数据到前端相关推荐

  1. flask返回json数据到前端_小白学Flask第六天| abort函数、自定义错误方法、视图函数的返回值...

    点击蓝色字关注我们! 一个正在努力变强的公众号 本文内容: 1. abort函数的使用 2. 自定义错误处理方法 3. 设置响应信息的方法 4. 返回json数据的方法 abort函数的使用 abor ...

  2. 如何解析json字符串及返回json数据到前端

    前言:最近需要实现的任务是:写若干个接口,并且接口中的请求数据是json格式,然后按照请求参数读取前端提前整理好的json数据,并且将json数据返回到服务器端. 主要的工具:Gson  2.8.2 ...

  3. springcloud gateway网关直接给前端返回json数据

    项目场景: 最近项目的网关会做鉴权操作,鉴权失败想直接给前端请求返回json数据,但是response对象中好像没有直接操作response的方法,借鉴各位大佬的经验,发现想要给response加上j ...

  4. php ini 长连接秒数,php使用webSocket实现Echarts长连接自动刷新的解决方案(2):后端服务端代码返回json数据...

    $address = "127.0.0.1"; $port = 9090; //调试的时候,可以多换端口来测试程序! set_time_limit(0); $sock = sock ...

  5. Spring学习手册 1:Spring MVC 返回JSON数据

    目录 完整代码在这 Spring MVC对JSON数据格式的支持非常好,配置完成后什么都不用管靠注解就可以轻松返回JSON格式的数据. Spring 对JSON的支持有三种方式,下面会一一介绍,在此之 ...

  6. java 控制器 返回 json_SpringMVC中controller返回json数据的方法

    java 控制器 返回 json_SpringMVC中controller返回json数据的方法 1.方法一: 使用springmvc原生注解@ResponseBody @ResponseBody @ ...

  7. spring MVC之返回JSON数据(Spring3.0 MVC+Jackson+AJAX)

    参考: http://angelbill3.iteye.com/blog/1985075 问题:在进行springmvc返回json数据的时候报如下错误:用上面的controller,访问:http: ...

  8. java后端 返回json_Java后端返回Json数据

    Java后端返回Json数据 Jackson 导包 com.fasterxml.jackson.core jackson-databind 2.12.1 创建ObjectMapper对象,调用writ ...

  9. Flask框架(flask中设置响应信息的方法,返回json数据的方法)

    设置响应信息的方法 1.  返回自定义的响应头,有两种方式: (1)  第一种是:视图函数return的时候,使用元组,返回自定义的信息           返回的时候的状态码可以自定义信息:&quo ...

最新文章

  1. ios - 使用@try、catch捕获异常:
  2. Webpack核心概念解析
  3. [asp]统计在线人数情况
  4. java 集合modcount_源码|jdk源码之LinkedList与modCount字段
  5. c#中abstract与virtual的区别
  6. vc6.0垃圾文件清理工具_C盘空间爆满,详细清理方法介绍
  7. 八种常用排序算法参考
  8. Gym - 100783E
  9. 为什么我们需要研究迁移学习?
  10. spring启动quartz定时器
  11. 猜数字游戏PYS60版代码分享啦
  12. leetcode---1728. 猫和老鼠 II
  13. 基于DPCA的线性监督分类的故障诊断方法-T2和SPE统计量的计算
  14. SAP 订单BOM与销售BOM的区别
  15. 工资倒挂,IT 行业薪资潜规则如何规避?
  16. 零基础学习一年拿到BAT三家offer
  17. 王兴:格局上输了,不管你多努力都不可能赢!
  18. 拿下东风!从家居到汽车,DuerOS为中国AI探索出一种智能新生态
  19. python 关于识别excel中单元格是否含有删除线
  20. el-row高度设置,分栏布局高度自适应

热门文章

  1. 计算机各按键的作用,【键盘各个键的功能图解】键盘各个键的功能介绍_键盘各个键的用途...
  2. 微软MSDN原版系统下载
  3. 给您支招,万网域名一元购,不再是梦
  4. LEA指令和OFFSET指令
  5. iOS 12 新功能亮相,必须升!
  6. 系统集成项目需求调研日志
  7. 初,中高级宏观经济学区别和联系
  8. 如何解决用360更新系统后网络连接失败
  9. PSCC-Net: Progressive Spatio-Channel Correlation Network for Image Manipulation Detection and Locali
  10. Fiddler抓包及_Fiddler过滤