如何解決web專案跨域問題
阿新 • • 發佈:2019-02-11
在開發過程中,前臺頁面在訪問後臺介面的過程中,出現了跨域問題,解決完畢後,記錄一下,備忘。
1。在專案的pom.xml檔案中新增如下依賴:
<!-- tomcat 下配置ajax 跨域 訪問 --> <dependency> <groupId>com.thetransactioncompany</groupId> <artifactId>cors-filter</artifactId> <version>1.7.1</version> </dependency> <dependency> <groupId>com.thetransactioncompany</groupId> <artifactId>java-property-utils</artifactId> <version>1.9</version> </dependency>
2。在專案的web.xml檔案中新增如下過濾器:
<!-- tomcat 下配置ajax 跨域 訪問 --> <filter> <filter-name>CORS</filter-name> <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> <init-param> <param-name>cors.allowOrigin</param-name> <param-value>*</param-value> </init-param> <init-param> <param-name>cors.supportedMethods</param-name> <param-value>GET, POST, HEAD, PUT, DELETE</param-value> </init-param> <init-param> <param-name>cors.supportedHeaders</param-name> <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified</param-value> </init-param> <init-param> <param-name>cors.exposedHeaders</param-name> <param-value>Set-Cookie</param-value> </init-param> <init-param> <param-name>cors.supportsCredentials</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CORS</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
此方法為服務端通用解決辦法,客戶端無需做處理,簡潔方便。