Vue中访问Geoserver发布的openlayer中wms地图服务

本文介绍了如何在Vue项目中利用OpenLayers加载GeoServer发布的WMS地图服务,包括GeoServer的发布步骤、OpenLayers的引入、地图配置及坐标转换。同时,提供了两种查看要素属性的方法,并提及了加载不同数据类型(如矢量地图和栅格地图)的注意事项。

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

一,geoserver发布地图服务

详见:Geoserver下载,安装与发布地图服务_李疆的博客-CSDN博客

二,引入ol

cnpm i ol@5.3.3 -S

三,根据图层预览中的URL,配置以下代码

(注意:如果没有显示出来,按F12查看有没有报错。如果没有报错,那么其原因极有可能是zoom设置小了,把zoom设为15等比较大的数再试试!!)

URL:http://localhost:8090/geoserver/ws-world/wms?service=WMS&version=1.1.0&request=GetMap&layers=ws-world%3Amychina&bbox=73.4412841796875%2C18.159912109375%2

### 集成 GeoServer TileMap 层至 Vue.js 为了在 Vue.js 项目中集成来自 GeoServer 的 TileMap 图层,可以基于 OpenLayers 库来完成这一功能。下面是一个详细的指南说明如何设置。 #### 创建 Map 组件 在 `src/components` 文件夹下建立一个新的组件文件命名为 `GeoServerMap.vue`[^1]: ```html <template> <div id="geo-server-map" ref="map"></div> </template> <script> import 'ol/ol.css'; import { Map, View } from 'ol'; import TileLayer from 'ol/layer/Tile'; import OSM from 'ol/source/OSM'; import TileWMS from 'ol/source/TileWMS'; export default { name: 'GeoServerMap', mounted() { const geoServerURL = 'http://localhost:8080/geoserver/wms'; // 替换成实际的 GeoServer URL new Map({ target: this.$refs.map, layers: [ // 使用默认底图作为背景 new TileLayer({ source: new OSM(), }), // 添加 GeoServer 提供的地图瓦片图层 new TileLayer({ source: new TileWMS({ url: geoServerURL, params: {'LAYERS': 'workspace_name:layer_name', 'TILED': true}, serverType: 'geoserver' }) }), ], view: new View({ center: [0, 0], // 设置中心坐标 zoom: 2 // 初始缩放级别 }) }); } }; </script> <style scoped> #geo-server-map { width: 100%; height: 500px; } </style> ``` 此代码片段展示了怎样配置一个包含两个图层的地图实例:一个是开放街道地图(OpenStreetMap),另一个是从 GeoServer 获取WMS 瓦片图层。注意替换掉示例中的 `geoServerURL`, `workspace_name` 和 `layer_name` 参数以匹配具体的部署环境和发布的地理空间数据集名称[^2]。 #### 安装依赖项 确保安装了必要的 npm 包以便能够正常使用上述代码: ```bash npm install ol --save ``` 这会将 OpenLayers 加入到项目的依赖列表里,从而允许通过 ES6 模块导入的方式使用它。 #### 发布 GIS 数据 为了让前端能顺利访问GeoServer 托管的数据,在后端还需要做适当的工作——即下载并配置好 GeoServer发布所需的 GIS 资源[^4]。一旦完成了这些准备工作,则可以通过调整前面提到的 JavaScript 代码里的参数轻松地把新发布的图层加入到现有的应用当中去。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值