webGIS实践(geoserver+openlayer+django)3_2_openlayer查询渲染geojson矢量要素

本文介绍了如何在webGIS项目中,利用Geoserver、OpenLayers和Django实现跨域查询并渲染GeoJSON矢量要素。首先配置Geoserver支持跨域,接着调整Chrome浏览器设置,然后在前端使用OpenLayers创建QueryFeatureOL.html文件实现查询功能,最终展示点击地图后渲染的矢量要素和属性信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在geoserver中,我们已经分析过getFeature的url了。

通过getFeature,访问类似如下的url,可以返回一个geojson。

http://localhost:8080/geoserver/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetFeatureInfo&FORMAT=image%2Fpng&TRANSPARENT=true&QUERY_LAYERS=gismap%3Av6_time_pref_pgn_utf_wgs84&LAYERS=gismap%3Av6_time_pref_pgn_utf_wgs84&exceptions=application%2Fvnd.ogc.se_inimage&INFO_FORMAT=application/json&FEATURE_COUNT=50&X=50&Y=50&SRS=EPSG%3A4326&STYLES=&WIDTH=101&HEIGHT=101&BBOX=114.59951733789063%2C39.30990146214762%2C116.59951733789063%2C41.30990146214762

但因为geoserver默认不支持跨域,所以我们要先解决一个geoserver的跨域问题。

 

一、配置geoserver支持跨域

打开\geoserver-2.16.2\webapps\geoserver\WEB-INF\ web.xml,用sublime打开就行。

搜索Uncomment following filter to enable CORS,一共有两处,都被注释掉了,把注释掉的内容拿出来,使其支持跨域。

改成这样就行:

 

 

二、配置浏览器支持跨域

 

我使用的是chrome浏览器。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值