1. 程式人生 > >spring mvc專案中配置跨域訪問過濾器

spring mvc專案中配置跨域訪問過濾器

1.在web.xml中配置:
<filter>
		<filter-name>contextFilter</filter-name>
		<filter-class>xhsoft.fruit.core.filter.WebContextFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>contextFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

2. 配置對應的filter類:
/**
 * 通過過濾器,解決跨域訪問的問題
 * 
 * @author JiangZhongyan
 * @date 2017年5月18日
 */
public class WebContextFilter implements Filter
{

	/**
	 * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
	 * @author JiangZhongyan
	 * @date 2017年5月18日
	 */
	@Override
	public void init(FilterConfig filterConfig) throws ServletException
	{
		// TODO Auto-generated method stub

	}

	/**
	 * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
	 *      javax.servlet.ServletResponse, javax.servlet.FilterChain)
	 * @author JiangZhongyan
	 * @date 2017年5月18日
	 */
	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
			throws IOException, ServletException
	{
		HttpServletResponse rsp = (HttpServletResponse) response;
		rsp.setHeader("Access-Control-Allow-Origin", "*");
		rsp.setHeader("Access-Control-Allow-Headers", "Authentication");

		chain.doFilter(request, rsp);
	}

	/**
	 * @see javax.servlet.Filter#destroy()
	 * @author JiangZhongyan
	 * @date 2017年5月18日
	 */
	@Override
	public void destroy()
	{
		// TODO Auto-generated method stub

	}

}


相關推薦

spring mvc專案配置訪問過濾器

1.在web.xml中配置:<filter> <filter-name>contextFilter</filter-name> <filter-class>xhsoft.fruit.core.filter.WebCon

vue-cli專案問題,設定訪問代理http/https

找到專案中的config資料夾下的index.js檔案,dev物件內有一個proxyTable的配置項。 dev: { // Paths assetsSubDirectory: "static", assetsPublicPath: "/", proxyT

Spring Boot配置訪問策略

1. 引言 我們在開發過程中通常因為不同應用之間的介面呼叫或者應用之間介面整合時經常會遇到跨域問題, 導致無法正常獲取介面資料,那麼什麼是跨域? 跨域的解決辦法是什麼? 下面結合Spring Boot相關的專案應用實戰, 詳解說明跨域的解決方案。 1.1

vue 配置訪問

class 服務器 gif .cn str ble scrip eap blank 主要在config->index.js中配置 proxyTable: { ‘/gameapi’: { changeOrigin: true, // target

Nginx配置訪問

由於瀏覽器同源策略的存在使得一個源中載入來自其它源中資源的行為受到了限制。即會出現跨域請求禁止。 通俗一點說就是如果存在協議、域名、埠或者子域名不同服務端,或一者為IP地址,一者為域名地址(在跨域問題上,域僅僅是通過"url的首部"來識別而不會去嘗試判斷相同的IP地址對應著兩個域或者兩個

System.Web.Http.Cors配置訪問的兩種方式

在webapi中使用System.Web.Http.Cors配置跨域資訊可以有兩種方式。   一種是在App_Start.WebApiConfig.cs的Register中配置如下程式碼,這種方式將在所有的webapi Controller裡面起作用。 using System; usi

【原創】Vue.js axios 訪問錯誤

1、假如訪問的介面地址為 http://www.test.com/apis/index.php  (php api 介面)2、而開發地址為http://127.0.0.1:8080,當axios發起請求時,出現如下錯誤:Failed to load http://www.test.com/apis/

利用Nginx解決前後端分離專案問題

1. 前端專案利用Nginx配置站點 server { listen 8092 default_server; listen [::]:8092 default_server; root /home/chenpeng/xiahuaida/data/vue; index index.ht

解決專案問題

一、跨域是什麼?        解釋跨域之前,先了解同源策略,簡單描述是:域名,協議,埠相同。       跨域的官方解釋是:跨站http請求(Cross-site HTTP request),指發起請求的資源所在域不同於請求指向資源所在域的http請求,即不符合同源策略

一篇文章搞定Maven安裝到建立maven版Spring MVC專案配置

配置maven 本地安裝 新建變數名為MAVEN_HOME,值為maven安裝目錄的系統變數 在系統變數名為Path的值中新增“%MAVEN_HOME%\bin;” cmd命令列輸入mvn -v 檢視是否安裝成功 修改maven配置檔案 apac

【Nginx】第十二節 配置訪問

author:咔咔 wechat:fangkangfk   先看一下哪些都屬於跨域   跨域:這個意思就是在A域名下的業務,需要請求到B域名的程式碼,這就這簡單的跨域   在正常的業務中,很難避免跨域,所以我們就需要使用nginx配

web專案問題解決方法

一種是JSONP 一種是 CORS。 在客戶端Javascript呼叫服務端介面的時候,如果需要支援跨域的話,需要服務端支援。 JSONP的方式就是服務端對返回的值進行回撥函式包裝,他的優點是支援眾多的瀏覽器, 缺點是僅支援Get的方式對服務端請求。 另一

spring boot專案實戰:問題解決

背景 前後端分離架構,前端anglerjs,後端spring boot,使用shiro作為許可權控制,已配置通用跨域請求支援。 前端呼叫介面時部分情況正常,部分情況出現跨域請求不支援情況,錯誤資訊如下: Response to preflight requ

【SpringBoot】配置訪問

在主啟動類Application.java類裡面加入: private CorsConfiguration buildConfig() { CorsConfiguration corsCon

Vue實現axios手動配置訪問以及對訪問進行封裝

1、首先專案中安裝axios外掛 2、手動配置,在src下面建立config資料夾,下面在建立index.js(訪問域名配置)和axios.js(請求攔截以及輕輕配置等) index.js // 系統引數配置 let url = { production: 'http://local

關於 Spring Security OAuth2 CORS 問題

CORS 是一個 W3C 標準,全稱是”跨域資源共享”(Cross-origin resource sharing)。它允許瀏覽器向跨源伺服器,發出XMLHttpRequest請求,從而克服了 AJAX 只能同源使用的限制(跨域資源共享 CORS 詳解)。 解決 CORS 跨域方法大致有如下幾類: 使用

javaweb專案ajax的訪問問題

在做專案中遇到了ajax的跨域訪問,尋求了好多時間,在不懈努力之下終於發現瞭解決辦法,與一般的不同的是,我是在伺服器端利用攔截器進行控制,即在每一次的請求中攔截器強制的加入Access-Control-Allow-Origin操作許可權,我的專案的架構採用Spr

vue-cli 3.0 使用axios配置訪問豆瓣接口

mbo 環境 因此 代碼 compile onf demo sub style vue-cli 3.0 配置axios跨域訪問豆瓣接口 自己做的小demo 由於豆瓣api跨域問題,因此不能直接通過ajax請求訪問,我們通過vue-cli提供給我們的代理 進行配置即可,

Spring-Boot專案配置redis註解快取

# Spring-Boot專案中配置redis註解快取 ## 在pom中新增redis快取支援依賴 ```xml org.springframework.boot spring-boot-starter-data-redis ``` ## 在yml中新增redis配置 > 設定快取

Spring Cloud之Gateway(四):TLS/SSL、配置訪問配置、執行器API、開發人員指南及MVC或Webflux搭建Gateway

版本:2.0.2.RELEASE 連結:http://spring.io/projects/spring-cloud-gateway#overview   本章主要目錄如下: Spring Cloud GatewayTLS/SSL是什麼? Spring Cloud