酷站(www.ku0.com)-致力于为互联网从业者提供动力!

热门关键词:  企业  as  baidu  c4rp3nt3r  美女
酷站

【云小站】新老客都返现+现金红包+瓜分60万奖池
酷站

java

旗下栏目: php js asp Flex Ajax JSP jquery asp.net C语言 java 正则表达式 微信小程序 Android IOS

详解springboot和vue前后端分离开发跨域登陆问题

来源:互联网搜集 作者:秩名 人气: 发布时间:2019-09-13
本篇文章主要介绍了详解springboot和vue前后端分离开发跨域登陆问题,对大家的学习或者工作具有一定的参考学习价值,感兴趣的小伙伴们可以参考一下,也感谢大家对酷站(ku0.com)的支持。

前后端分离开发中,一般都会遇到请求跨域问题。而且一般也会遇到登陆失效问题。今天就以springboot和vue为例来看如何解决上述问题

增加过滤器
 

@WebFilter
@Component
public class CorsFilter implements Filter {
 @Override
 public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
  HttpServletRequest request = (HttpServletRequest) req;
  HttpServletResponse response = (HttpServletResponse) res;
  response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
  response.setHeader("Access-Control-Allow-Credentials", "true");
  response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
  response.setHeader("Access-Control-Max-Age", "3600");
  response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
  System.out.println("**************************跨域过滤器被使用**************************");
  chain.doFilter(req, res);
 }
}

注意Access-Control-Allow-Origin这个属性不要用 * ,因为用 * 的话是可以解决跨域问题,但是无法解决登陆失效的问题。

axios属性设置

在Vue中使用axios来发送请求,我们增加如下设置
 
 
axios.defaults.withCredentials = true;

如果没有配置为true,默认为false则向后台发送的请求当中不携带cookie信息,如此每一次sessionID自然会不同。因此获取不到登陆信息。

版权声明:本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 959677720#qq.cn(#换@) 举报,一经查实,本站将立刻删除。
原文链接:https://segmentfault.com/a/1190000020359152

相关文章

  • Java实现单人信息管理程序方法

    Java实现单人信息管理程序方法

    对前一个菜单程序进行扩充,要求增加一个人的完整信息,人的信息包括姓名和年龄。保存后也可以修改、删除、查询此信息. 可以使用对象序列化保存,需要增加文件操作类,专门负责保存和读取文件的内容,并修改 Operate 类,为其增加具体的......
    02-13
  • java.mail实现发送邮件方法

    java.mail实现发送邮件方法

    前提条件: 需要对邮箱做出设置,开启 :POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV等服务 一方面是接收这些代理服务器发送的邮件 另一方面就是让邮箱接受这些邮件协议的代理 在登录的时候,就是用户名和授权码,进行登录,获取授权码的过......
    02-11
  • Linux中Java开发常用软件安装方法

    Linux中Java开发常用软件安装方法

    开发工具下载: Tomcat下载: wget http://learning.happymmall.com/tomcat/apache-tomcat-7.0.73.tar.gz JDK下载: wget http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64......
    02-07
  • 基于java向mysql数据库中存取图片

    基于java向mysql数据库中存取图片

    学mysql的时候都是做个表格,放的也都是文字内容,虽然我知道长篇的文章和图片或者视频的都是用过文件夹的方式存储的,再讲文件路径存进数据库中。但还是想试试直接往mysql数据库中存取图片。这里我用的是java语言和jdbc实现的 mysql数据......
    02-05
  • Jmeter添加循环控制器的方法

    Jmeter添加循环控制器的方法

    场景描述:批量数据创建 新建线程组-编辑请求信息POST,创建产品 将入参录入Body Data 添加用户定义的变量,将数据参数化${value},在请求入参中引用 循环控制器应该控制的是多次请求,生成批量产品数据,添加循环控制器,设置循环次数,......
    02-03
  • linux中java获取路径的代码

    linux中java获取路径的代码

    linux中java获取路径怎么写? 在Unix/Linux中,路径的分隔采用正斜/,比如cd /home/java。 在java的代码开发中 \ 是代表转义字符。 相对路径和绝对路径 . 指的是当前目录 .. 指的是当前目录的上一级目录 ./book表示当前目录下的book文件......
    02-03
  • Java中的强制类型转换 大数转小数的介绍

    Java中的强制类型转换 大数转小数的介绍

    首先要明确一下转换规则:大数转小数,多出的高位部分会被截断。比如 int 占 4个byte(32 bit), byte占 1个byte(8bit), 那int 转 byte ,int 高位多出的那24个bit会被截断。 例1: int b = 233; // 正整数强转System.out.println((byte)b);......
    02-02
  • Java递归求和1+2+3+...+n介绍

    Java递归求和1+2+3+...+n介绍

    Java递归求和1+2+3+...+n public class Sum { public static int count(int n) { if (n 1) { return count(n - 1) + n; } else { return n; } } public static void main(String[] args) { System.out.println(Sum.count(100)); }} 扩展......
    01-31
  • Mybatis批量插入数据返回主键的介绍

    Mybatis批量插入数据返回主键的介绍

    响应效果(id为主键): { data: [ {studentName: 张三,classNo: 一班,id: 111}, {studentName: 李四,classNo: 二班,id: 112}, {studentName: 王五,classNo: 一班,id: 113} ]} 控制层: @PostMapping(/test)@ResponseBodypublic MapStrin......
    01-21
  • java实现波雷费密码算法

    java实现波雷费密码算法

    一、算法描述 波雷费密码是一种对称式密码,是首种双字母取代的加密法。 下面描述算法步骤: 1、从1号二维码M05,提取明文信息和密文,M05格式:xxxxxx|yyyyyy,其中明文xxxxxx,密钥部分信息为yyyyyy中的提取所有英文字母信息。 2、将提......
    01-18

最新更新