1. 程式人生 > 實用技巧 >OPenlayer通過axios 獲取arcgis服務可用的json格式資料,來實現圖層服務區域的定位

OPenlayer通過axios 獲取arcgis服務可用的json格式資料,來實現圖層服務區域的定位

1、引入

// 如果沒有安裝依賴先安裝

npminstallaxios

import axios from 'axios'

2、通過 axios 獲取arcgis服務的json資料
// 獲取資料時會遇到跨域問題,如果你是VUE專案,那麼使用代理來獲取

// 此處我的代理是 /acrgisIp

let str = '/acrgisIp/******************************************************?f=pjson' // 將*******************************替換為你的服務地址

axios.get(str).then(res => {

let wkt = ''

if (res.data.initialExtent !== undefined) {

    wkt = `Polygon((${res.data.initialExtent.xmin} ${res.data.initialExtent.ymin}, ${res.data.initialExtent.xmax} ${res.data.initialExtent.ymin}, ${res.data.initialExtent.xmax}  ${res.data.initialExtent.ymax}, ${res.data.initialExtent.xmin} ${res.data.initialExtent.ymax}, ${res.data.initialExtent.xmin} ${res.data.initialExtent.ymin}))`
} else {
wkt = `Polygon((${res.data.extent.xmin} ${res.data.extent.ymin}, ${res.data.extent.xmax} ${res.data.extent.ymin}, ${res.data.extent.xmax} ${res.data.extent.ymax}, ${res.data.extent.xmin} ${res.data.extent.ymax}, ${res.data.extent.xmin} ${res.data.extent.ymin}))`
}
// 這裡wkt便是geometry資料,是圖層服務的邊界範圍,可以用來進行服務的範圍定位
})