栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

验证码(前后端分离)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

验证码(前后端分离)

来源: 易途老师实训课程

CrossDomainFilter.java
package com.etoak.filter;
import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;


import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
//跨域的过滤器
//@Slf4j
//@Configuration
public class CrossDomainFilter implements Filter {

	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
			throws IOException, ServletException {
		HttpServletResponse httpResponse = (HttpServletResponse) response;

		// 允许所有的请求域名访问我们的跨域资源,可以固定单个或者多个内容
		httpResponse.setHeader("Access-Control-Allow-Origin", "*");//
		// httpResponse.setHeader("Access-Control-Allow-Origin", "http://localhost:9090");// 允许所有的请求域名访问我们的跨域资源,可以固定单个或者多个内容
		httpResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETe, PUT");// 允许何种请求方法访问该跨域资源服务器
		httpResponse.setHeader("Access-Control-Max-Age", "3600");// 预检请求的有效期,单位为秒。有效期内,不会重复发送预检请求
		httpResponse.addHeader("Access-Control-Allow-Headers",
				"Accept, Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With");// 允许所有的请求header访问,可以自定义设置任意请求头信息
		httpResponse.setHeader("Access-Control-Allow-Credentials", "true");// 是否允许用户发送、处理cookie
		httpResponse.setHeader("Access-Control-Expose-Headers","code");
		chain.doFilter(request, httpResponse);
	}

	@Override
	public void init(FilterConfig filterConfig) throws ServletException {
		//log.info("-----CrossDomainFilter init -------");
	}

	@Override
	public void destroy() {

	}

}

PetApp.java
package com.etoak;

import com.etoak.filter.CrossDomainFilter;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;

@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
public class PetApp {
    public static void main(String[] args) {
        SpringApplication.run(PetApp.class,args);
    }

//    SpringBoot注册跨域过滤器
    @Bean
    public FilterRegistrationBean filterRegistrationBean() {

//        创建注册过滤器的对象
        FilterRegistrationBean filter = new FilterRegistrationBean<>();
//        注册过滤器
        filter.setFilter(new CrossDomainFilter());
//        设置优先级 1表示最高级别
        filter.setOrder(1);
        // 
import axios from "axios";

axios.defaults.baseURL = 'http://localhost:8000/pet'

Vue.prototype.$http = axios
回到登陆页面Login.vue





效果图:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/686964.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号