美文网首页
如何处理前端请求跨域问题?

如何处理前端请求跨域问题?

作者: 涂小码 | 来源:发表于2020-03-20 17:08 被阅读0次

备注:浏览器会拦截跨域,但是options请求会发送到后端去;
1.检查前端部分网络请求header设置如下:

axios.interceptors.request.use(
    config => {
    config.headers["Access-Control-Allow-Origin"] ="*";
    return {
        ...config,
        timeout:8000,
        withCredentials: true //是否允许cookie跨域处理
        };
    },
    error => {
        return Promise.reject(error);
       }
);

2.检查ng配置是否如下:

http { 
    ###start#### 
    add_header Access-Control-Allow-Origin *; 
    add_header Access-Control-Allow-Headers X-Requested-With; 
    add_header Access-Control-Allow-Methods GET,POST,OPTIONS; 
    ###end ### 
}

3.检查服务端跨域配置:
写一个Filter,在doFilter里面加:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        // TODO Auto-generated method stub
        // place your code here
        HttpServletRequest req = (HttpServletRequest) request;
        HttpServletResponse resp = (HttpServletResponse) response;
        // 指定允许其他域名访问
        resp.setHeader("Access-Control-Allow-Origin", "*");
        // 响应类型
        resp.setHeader("Access-Control-Allow-Methods", "POST, GET, DELETE, OPTIONS, DELETE");
        // 响应头设置
        resp.setHeader("Access-Control-Allow-Headers", "Content-Type, x-requested-with, X-Custom-Header, HaiYi-Access-Token");
        if ("OPTIONS".equals(req.getMethod())){
            resp.setStatus(HttpStatus.SC_NO_CONTENT);
        }
        chain.doFilter(request, response);
    }

4.检查各个微服务之间是否重复设置跨域问题

Access-Control-Allow-Origin:”*"
Access-Control-Allow-Origin:”*"

相关文章

  • 关于设置env等环境变量的思考

    1、如何处理跨域后台处理跨域前端处理跨域浏览器处理跨域 前端本地处理跨域:代理线上跨域的处理方式:Nginx反向代...

  • [mark]九种跨域方式实现原理

    前端如何使用proxyTable和nginx解决跨域问题 前言 前后端数据交互经常会碰到请求跨域,什么是跨域,以及...

  • django跨域配置

    前言——跨域请求 前端对Cross-Origin Resource Sharing 问题(CORS,中文又称'跨域...

  • 前端踩过的坑

    关于前端 跨域问题 大概问题 1,前端无须处理,需要在后台配置 niginx的配置 处理跨域的域名 关于布局上 ...

  • 如何处理前端请求跨域问题?

    备注:浏览器会拦截跨域,但是options请求会发送到后端去;1.检查前端部分网络请求header设置如下: 2....

  • express 实现跨域

    在前端向后端发起请求时会出现跨域无法请求的问题,所谓跨域是指前端的资源请求与所请求的资源本身的服务器在不同域或不同...

  • 使用http模块搭建node服务器以及jsonp原理解析

    跨域问题对于前端来说已经属于老生常谈的问题了,而jsonp就是我们处理跨域方案的一种,但是因为它只支持get请求,...

  • 实现跨域请求的八种方式

    前端开发中我们经常会遇到跨域请求的情况,处理跨域请求方式很多,特整理如下: 浏览器的同源策略 提到跨域不能不先说一...

  • 新增-后端跨域

    前端程序 后端程序 现在请求无法,到达需要解决跨域问题 每个servlet单独做跨域设置 跨域过滤器

  • Axios跨域处理方案

    Ajax跨域问题使用jsonp处理 Axios跨域请求问题处理: 1、在config文件夹下的prod和dev的j...

网友评论

      本文标题:如何处理前端请求跨域问题?

      本文链接:https://www.haomeiwen.com/subject/zhzjyhtx.html