分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

Ajax跨域后台处理

发布时间:2023-09-06 02:03责任编辑:熊小新关键词:Ajax跨域
页面报错: Failed to load http://localhost:8080/websites/webInterface/queryNewsList: Response to preflight request doesn‘t pass access control check: No ‘Access-Control-Allow-Origin‘ header is present on the requested resource. Origin ‘http://127.0.0.1:8020‘ is therefore not allowed access.


package com.xxx.websites.commons.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.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.httpclient.HttpStatus;/** * ?* @ClassName:CorsFilter * @Description:TODO(统一处理跨域请求) * @author: xxx * @date 2018年7月4日 上午11:11:19 * * @Copyright: 2018 www.zsplat.com Inc. All rights reserved. */public class CorsFilter implements Filter { ???@Override ???public void init(FilterConfig filterConfig) throws ServletException { ???} ???@Override ???public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) ???????????throws IOException, ServletException { ???????HttpServletResponse _response = (HttpServletResponse) response; ???????HttpServletRequest _request = (HttpServletRequest) request; ???????// 指定允许其他域名访问 ???????_response.setHeader("Access-Control-Allow-Origin", "*"); ???????// 响应类型 ???????_response.setHeader("Access-Control-Allow-Methods", "POST, GET, DELETE, OPTIONS, DELETE"); ???????// 响应头设置 ???????_response.setHeader("Access-Control-Allow-Headers", "Content-Type, x-requested-with, X-Custom-Header, HaiYi-Access-Token"); ???????if ("OPTIONS".equals(_request.getMethod())){ ???????????_response.setStatus(HttpStatus.SC_NO_CONTENT); ???????} ???????chain.doFilter(request, response); ???} ???@Override ???public void destroy() { ???}}

web.xml中配置 

<!-- 跨域拦截器 --> ???<filter> ???????<filter-name>cors</filter-name> ???????<filter-class>com.zsplat.websites.commons.filter.CorsFilter</filter-class> ???</filter> ???<filter-mapping> ???????<filter-name>cors</filter-name> ???????<url-pattern>/*</url-pattern> ???</filter-mapping> ???<!-- 跨域拦截器 -->

Ajax跨域后台处理

原文地址:https://www.cnblogs.com/zhou-pan/p/9274490.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved