`

java使用filter设置跨域访问

    博客分类:
  • java
阅读更多
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;

public class AuthorityFilter implements Filter {

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

	}

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

		HttpServletRequest nHttpServletRequest = (HttpServletRequest) request;

		String nAppKey = nHttpServletRequest.getHeader("Accept-Key");
		if (nAppKey == null || "".equals(nAppKey)) {
			nHttpServletResponse.setStatus(403);
			return;
		} else {
			// 存在则验证准确性
//			if (!nAppKey.toString().equals(XSetting.ZTOKEN_KEY)) {
//				nHttpServletResponse.setStatus(403);
//				return;
//			}
		}

		nHttpServletResponse.setHeader("Access-Control-Allow-Origin", "*");
		nHttpServletResponse.setHeader("Access-Control-Allow-Headers","Accept-Key");
		chain.doFilter(request, nHttpServletResponse);
	}

	@Override
	public void init(FilterConfig arg0) throws ServletException {
		// TODO Auto-generated method stub

	}

}
0
0
分享到:
评论

相关推荐

    JAVA通过Filter实现允许服务跨域请求的方法

    // 允许跨域访问 response.setContentType("text/html;charset=UTF-8"); response.setHeader("Access-Control-Allow-Origin", "https://monline.01zhuanche.com"); response.setHeader("Access-Control-Allow-...

    Java跨域使用jar

    要实现Java跨域,首先需要在Web应用的`web.xml`配置文件中引入`cors-filter-1.3.2.jar`。配置如下: ```xml <filter> <filter-name>CorsFilter</filter-name> <filter-class>...

    tomcat6跨域访问配置及jar包

    配置tomcat6的跨域访问问题,包含两个xml配置文件clientaccesspolicy.xml,crossdomain.xml,以及两个jar包cors-filter-1.7.1.jar,java-property-utils-1.9.1.jar

    跨域访问Filter实例

    JAVA配置跨越访问Filter APP要访问WEB系统,需要进行跨域设置 关键: public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {}

    JAVA前后台跨域的两种方法(详细步骤)

    3. **配置Filter**:在`doFilter`方法中,我们设置响应头`Access-Control-Allow-Origin`、`Access-Control-Allow-Methods`、`Access-Control-Allow-Headers`等,以允许特定或所有源进行跨域访问。 ```java @...

    Tomcat解决跨域的两个jar包java-property-utils-1.9.jar和cors-filter-1.7.jar

    `cors-filter`是一个实现了CORS机制的Servlet Filter,它可以拦截HTTP请求,根据预定义的规则添加适当的响应头,从而实现跨域访问。 要将`cors-filter`集成到Tomcat中,我们需要以下步骤: 1. 将`cors-filter-1.7....

    服务端跨域访问处理.rar

    "服务端跨域访问处理.rar"这个压缩包提供了一种解决方案,主要针对Java服务器环境。接下来,我们将深入探讨跨域访问的问题,以及如何通过描述中的步骤来解决它。 跨域访问是由于浏览器的安全策略——同源策略(Same...

    CORS跨域访问框架jra包

    总的来说,`CORS跨域访问框架jra包`简化了在Java Web应用中实现CORS支持的过程,让开发者能够更便捷地处理跨域请求,提升用户体验,同时确保安全性。对于需要进行跨域操作的Web应用,这是一个非常实用的工具。

    java cxf webservice接口解决跨域问题

    总结起来,解决Java CXF Webservice接口的跨域问题,需要利用CORS机制,配置CORS Filter,可能涉及`java-property-utils-1.9.jar`库,以及在`web.xml`中设置相应的初始化参数。同时,如果项目使用Spring框架,还可以...

    java服务器端解决跨域问题共6页.pdf.zip

    7. 跨域资源共享的安全考虑:虽然CORS提供了跨域访问的能力,但也带来了安全风险。开发者需要确保只允许可信的源进行跨域请求,并限制可能暴露敏感数据的API接口。 8. 预检请求(Preflight Request):当请求的HTTP...

    tomcat跨域访问问题

    在开发Web应用时,我们经常会遇到“跨域访问”(Cross-Origin Resource Sharing, CORS)的问题。Tomcat作为一款广泛使用的Java Servlet容器,同样会遇到这个问题。跨域是由于浏览器的安全策略,同一源策略(Same-...

    arcgis server10.2跨域(cors-filter-1.7,java-property-utils-1.9)

    使用这个库可以帮助开发者更方便地读取、修改和管理这些配置,例如,可以方便地更新CORS策略相关的配置,如允许哪些源进行跨域访问。 在实际操作中,要实现ArcGIS Server 10.2的跨域支持,你需要按照以下步骤进行:...

    cors-filter-1.7.jar spring解决跨域问题 java

    本篇将详细讲解如何利用Spring解决跨域问题,以及如何使用`cors-filter-1.7.jar`和`java-property-utils-1.9.1.jar`这两个库来辅助实现。 一、Spring解决跨域问题的基本原理 1. CORS定义:跨域是指浏览器遵循同源...

    跨域、cors-filter-1.7、java-property-utils-1.9

    这个过滤器会在请求到达目标资源之前拦截请求,检查其CORS相关头,并根据配置返回相应的响应头,从而允许跨域访问。 `java-property-utils-1.9.jar`是另一个Java库,用于处理属性文件(property files)。在J2EE...

    cors-filter-2.5 + java-property-utils-1.9.1.zip

    跨域资源共享(CORS,Cross-Origin Resource Sharing)是一种机制,允许Web应用从不同的源(比如不同的域名、协议或端口)获取资源。...开发者可以利用这些工具轻松地控制跨域访问,提升Web应用的交互性。

    tomcat跨域访问支持Jar包

    添加跨域访问支持有两种简单的方式:一种是在所有头接口返回的response头中添加response.setHeader("Access-Control-Allow-Origin", "http://127.0.0.1/*");另外一种就是在本系统的web.xml中添加CORS支持。 CORS支持...

    java解决请求跨域的两种方法

    使用拦截器实现 CORS 需要实现 javax.servlet.Filter 接口,并在 Filter 中设置响应头,允许跨域请求访问。下面是一个简单的示例代码: ```java import javax.servlet.Filter; import javax.servlet.FilterChain; ...

    cors-filter-1.7.jar 和 java-property-utils-1.9.jar

    `cors-filter-1.7.jar` 和 `java-property-utils-1.9.jar` 是在Java环境中实现CORS跨域访问时常用的两个库。`cors-filter-1.7.jar` 包含了一个过滤器,该过滤器能够处理HTTP请求头,允许跨域请求通过。而`java-...

    Cors实现java后端完全跨域实例

    Access-Control-Allow-Origin头信息被设置为"*",这意味着允许来自所有域名的跨域访问,Access-Control-Allow-Methods头信息被设置为"POST, GET, PUT, DELETE",这意味着允许使用这些方法进行跨域访问。 此外,我们...

    Spring Boot实现跨域访问实现代码

    Spring Boot 实现跨域访问实现代码 Spring Boot 是一个基于 ...Spring Boot 提供了多种方式来实现跨域访问,包括使用 filter 过滤器和 `@CrossOrigin` 注解等。开发者可以根据实际情况选择合适的方式来实现跨域访问。

Global site tag (gtag.js) - Google Analytics