赞
踩
一、加载如下的GeoServer发布地图服务
加载代码如下,其中url为红线框选部分,layers为发布的图层NAME
- //加载GeoServer图层,测试数据
- ShowTestData() {
- var layer = new Cesium.WebMapServiceImageryProvider({
- url: 'url',
- layers: 'pipelineGIS:YCYSZYSZYG',
- parameters: {
- service: 'WMS',
- format: 'image/png',
- transparent: true,
- }
- });
- viewer.imageryLayers.addImageryProvider(layer);
- },
此时即为加载Geoserver服务成功,不过我在加载的时候,遇到如下的跨域问题
解决方法如下:
如果你的Chrome版本为49之前的,则在关闭所有网页,在Chrome桌面快捷方式,右键属性,目标 后添加 空格+--disable-web-security
如果版本为49之后,快捷方式,右键属性,目标后添加 空格+--disable-web-security --user-data-dir=C:\ChromeUseData 其中C:\ChromeUseData为自己创建的文件夹
例如:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir=C:\ChromeUseData
重新打开浏览器,出现如下,则证明成功
后续补充:用上述方法解决跨域问题只能自己本机可以访问,如果项目部署,也不可能去给每个机子得浏览器改设置,,所以还是需要其他方法。
首先下载下面两个包,放在./geoserver\WEB-INF\lib目录下
下载地址:https://download.csdn.net/download/qq_40216244/12927072
然后再./geoserver\WEB-INF中得web.xml文件添加以下代码
- <filter>
- <filter-name>CORS</filter-name>
- <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
- <init-param>
- <param-name>cors.tagRequests</param-name>
- <param-value>true</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>CORS</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
最后再重启Tomcat,以及Geoserver即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。