派生自 wuyushui/SewerAndRainNetwork

chenyibo
2021-04-02 21c0837e6f96ada513d3bd5210d96f8ff8681c5d
1.修改随机获取天地图token 问题
1个文件已添加
2个文件已修改
41 ■■■■■ 已修改文件
src/components/helpers/BasemapHelper.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/MapConfig.js 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/utils.js 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/BasemapHelper.js
@@ -1,5 +1,6 @@
/* eslint-disable no-debugger */
import AjaxUtils from '@/utils/AjaxUtils'
import * as utils from '../../utils/utils'
/**
 * 底图管理助手,负责底图创建及开关
@@ -79,6 +80,11 @@
      const internetBasemaps = config.mapConfig.InternetBaseMaps
      for (let i = 0, len = internetBasemaps.length; i < len; ++i) {
        const basemapConfig = internetBasemaps[i]
        const mapToken = utils.getRandomTDTToken()
        const mapUrl = utils.changeURLArg(basemapConfig.map.url, 'tk', mapToken)
        console.log(mapToken)
        console.log(mapUrl)
        console.log(basemapConfig.map.url)
        const basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
        const basemapAnnotationLayer = this.L.tileLayer(basemapConfig.annotation.url, basemapConfig.annotation.option)
src/conf/MapConfig.js
@@ -53,6 +53,10 @@
  } // 污雨水图层配置
}
const mapTokenArray = ['5d76218063082952d18b76da5005f490',
  'f1b72b5e7cb1175acddfa485f1bc9770',
  'ac8bbce8119b337d75d4b06696f6186d',
  '9bf834ce1ba3ba01c568147e9bfcab7c']
/**
 * 内网GIS,获取token参数
 */
@@ -88,6 +92,7 @@
  mapOptions,
  mapConfig,
  TokenConfig,
  BLUEMAP_HOST
  BLUEMAP_HOST,
  mapTokenArray
  // MagicMaker
}
src/utils/utils.js
New file
@@ -0,0 +1,28 @@
/*
* url 目标url
* arg 需要替换的参数名称
* arg_val 替换后的参数的值
* return url 参数替换后的url
*/
import MapConfig from '../conf/MapConfig'
export function changeURLArg (url, arg, argValue) {
  var pattern = arg + '=([^&]*)'
  var replaceText = arg + '=' + argValue
  if (url.match(pattern)) {
    var tmp = '/(' + arg + '=)([^&]*)/gi'
    // eslint-disable-next-line no-eval
    tmp = url.replace(eval(tmp), replaceText)
    return tmp
  } else {
    if (url.match('[\\?]')) {
      return url + '&' + replaceText
    } else {
      return url + '?' + replaceText
    }
  }
  // eslint-disable-next-line no-unreachable
  return url + '\n' + arg + '\n' + argValue
}
export function getRandomTDTToken () {
  return MapConfig.mapTokenArray[Math.floor(Math.random() * MapConfig.mapTokenArray.length)]
}