tomcat项目跨域问题解决方法整理

这篇具有很好参考价值的文章主要介绍了tomcat项目跨域问题解决方法整理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

tomcat项目跨域问题解决方法整理

tomcat 跨域,java,编程,tomcat,java

 

 

  <!-- 跨域 -->
  <filter>
    <filter-name>CORSFilter</filter-name>
    <filter-class>com.cors.CORSFilter</filter-class>
    <init-param>
      <param-name>allowOrigin</param-name>
      <param-value>*</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>CORSFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

 

跨域过滤自定义类文章来源地址https://www.toymoban.com/news/detail-807627.html

package com.test.trundle.cors;

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 com.test.trundle.common.StringUtils;


/**
 * Servlet Filter implementation class CORSFilter
 */
public class CORSFilter implements Filter {

	
	private static String allowOrigin = "";
	private static String allowMethods = "POST,GET,PUT,OPTIONS,DELETE";
	private static String maxAge = "3600";
	private static String allowHeaders = "Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers";
	private static String allowCredentials = "true";
    

	/**
	 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
	 */
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		HttpServletResponse _response = (HttpServletResponse) response;  
		_response.setHeader("Access-Control-Allow-Origin", allowOrigin);  
		_response.setHeader("Access-Control-Allow-Methods", allowMethods);  
		_response.setHeader("Access-Control-Max-Age", maxAge);  
		_response.setHeader("Access-Control-Allow-Headers", allowHeaders);  
		_response.setHeader("Access-Control-Allow-Credentials", allowCredentials);  
        chain.doFilter(request, _response);  
	}

	/**
	 * @see Filter#init(FilterConfig)
	 */
	public void init(FilterConfig fConfig) throws ServletException {
		String _allowOrigin = fConfig.getInitParameter("allowOrigin");
		if(!StringUtils.isNullOrEmpty(_allowOrigin)){
			allowOrigin = _allowOrigin;
		}
		String _allowMethods = fConfig.getInitParameter("allowMethods");
		if(!StringUtils.isNullOrEmpty(_allowMethods)){
			allowMethods = _allowMethods;
		}
		String _maxAge = fConfig.getInitParameter("maxAge");
		if(!StringUtils.isNullOrEmpty(_maxAge)){
			maxAge = _maxAge;
		}
		String _allowHeaders = fConfig.getInitParameter("allowHeaders");
		if(!StringUtils.isNullOrEmpty(_allowHeaders)){
			allowHeaders = _allowHeaders;
		}
		String _allowCredentials = fConfig.getInitParameter("allowCredentials");
		if(!StringUtils.isNullOrEmpty(_allowCredentials)){
			allowCredentials = _allowCredentials;
		}
	}

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		
	}

}

到了这里,关于tomcat项目跨域问题解决方法整理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (企业 / 公司项目)微服务项目解决跨域问题:

    前后端分离项目中前端出现了跨域的问题  在网关模块配置文件中添加 配置 application.properties

    2024年02月05日
    浏览(41)
  • 前端跨域问题解决方法

    跨域是 WEB浏览器专有 的同源限制访问策略。(后台接口调用和postman等工具会出现) 跨源资源共享(CORS,或通俗地译为跨域资源共享)是一种基于 HTTP 头的机制,该机制通过允许服务器标示除了它自己以外的其他源(域、协议或端口),使得浏览器允许这些源访问加载自己的资

    2024年02月13日
    浏览(35)
  • Flutter:web项目跨域问题解决

    前后端解决系列 文章目录 一、Flutter web客户端解决本地环境调试跨域问题 二、Flutter web客户端解决线上环境跨域问题 就一句命令【--web-browser-flag \\\"--disable-web-security\\\"】,用来屏蔽浏览器域名请求同源策略  配置在run/debug configurations中,使用run按钮直接运行 首先确定几个信息

    2024年02月02日
    浏览(34)
  • 解决跨域问题的常用方法

    有一个小小的东西叫cookie大家应该知道,一般用来处理登录等场景,目的是让服务端知道谁发出的这次请求。如果你请求了接口进行登录,服务端验证通过后会在响应头加入Set-C

    2023年04月08日
    浏览(24)
  • Nginx跨域问题的解决方法

    Web前端开发经常会遇到跨域访问,如果没有办法让后台开放访问域,调用接口就会被浏览器拦截。解决跨域问题的方案,可以搭建一个后台服务做中间转发,也可以用 nginx https://so.csdn.net/so/search?q=nginx 转发。 问题发生在nginx 反向代理 https://so.csdn.net/so/search?q=%E5%8F%8D%E5%90%91%E

    2024年02月11日
    浏览(38)
  • vue项目跨域问题(图片跨域)devServer.proxy代理失效时,nginx反向代理解决跨域问题

    ​ 本篇文章主要记录个人在公司项目开发中所遇问题,主要内容:在vue项目的开发中图片所存的服务器/端口号和项目所在的服务器/端口号不同,出现了跨域问题的保错。 ​ 如果文章有歧义,请各位大佬指出,避免误导更多的人!! Bug起因 ​ 在vue项目的开发中图片所存的

    2024年02月15日
    浏览(38)
  • js跨域问题及解决方法汇总

    浏览器为了保证用户信息的安全,防止恶意网站窃取数据,禁止不同域之间的js交互。对于浏览器而言,只要协议、域名、端口其中有一个不同就会触发同源策略,造成跨域,从而限制交互 cookie、storage、indexDB等不能获取 ajax不能发送请求、dom树无法获得 如果一个网页可以随

    2024年02月10日
    浏览(28)
  • 前端解决跨域问题(9个方法)

    什么是跨域? 跨域,是指浏览器不能执行其他网站的脚本。它是由 浏览器的同源策略 造成的,是浏览器对 JavaScript 实施的安全限制。 这里说明一下,无法跨域是浏览器对于用户安全的考虑,如果自己写个没有同源策略的浏览器,完全不用考虑跨域问题了。是浏览器的锅,对

    2024年02月03日
    浏览(40)
  • 宝塔面板部署前后端分离项目(解决跨域问题)

    1.打包前后端项目 注意的点 前后端的联调要改成前后端线上的地址 然后数据库相关的要改成 线上的数据库 放开自己的防火墙 不要忘记了 宝塔面板和阿里云服务器(腾讯云服务器)都要打开 前端 改自己请求的地址 一定要改 打包 打开packaeg.json之后点build 打包之后会生成一

    2024年02月08日
    浏览(40)
  • Django 解决CORS跨域问题的方法

    Cross-Origin Resource Sharing(CORS) 跨域问题,在前后端后离项目, selenium , playweight 自动化测试代码中经常遇到。 而使用 python request, curl, postman 等非浏览器代码发送请求时则不存在这个问题。 浏览器采用了同源保护策略,为了防御恶意攻击,会检查Request消息与Response消息的域

    2024年03月23日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包