Geoserver跨域问题解决方法

论坛 期权论坛 脚本     
匿名技术用户   2020-12-29 23:10   145   0

环境:

Java7+Tomcat8.0.20+Geoserver2.7.6(war版)

解决步骤:

1、修改%CATALINA_HOME%/webapps/geoserver/WEB-INF/web.xml文件内容:

在filter标签部分添加代码:

<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.supportsCredentials</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>cors.supportedHeaders</param-name>
<param-value>accept, authorization, origin</param-value>
</init-param>
<init-param>
<param-name>cors.supportedMethods</param-name>
<param-value>GET, POST, HEAD, OPTIONS</param-value>
</init-param>

</filter>

在filter-mapping标签部分添加代码:
<filter-mapping>
<filter-name>CORS</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

2、下载jar包:cors-filter-2.3.jar,Java-property-utils-1.9.1.jar,并将其放入%CATALINA_HOME%/webapps/geoserver/WEB-INF/lib文件夹中。

3、重启geoserver。(可能还需要重启Tomcat)

跨域问题解决。

Tips:

1、注意Java,Tomcat以及GeoServer的版本是否匹配,有些版本不兼容,或者有bug,或者功能不完善!

2、%CATALINA_HOME%是Tomcat的安装目录,在环境变量中可以找到。例如,在我的电脑上是C:\Software\Tomcat-9.0。

3、两个jar包都需要正确放入!若只配置了web.xml,或是配置了web.xml缺少jar包,GeoServer都将无法正常启动!

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP