webpack+vue+cesium跨域问题的解决

采用webpack+vue+cesium,调用arcgis service出现跨域问题,解决方法如下:

1. 在webpack.dev.conf.js中启用proxy

devServer: {
    clientLogLevel: 'warning',
    historyApiFallback: true,
    hot: true,
    compress: true,
    host: HOST || config.dev.host,
    port: PORT || config.dev.port,
    open: config.dev.autoOpenBrowser,
    overlay: config.dev.errorOverlay
      ? { warnings: false, errors: true }
      : false,
    publicPath: config.dev.assetsPublicPath, 
    proxy: config.dev.proxyTable, // 启用proxy
    quiet: true, // necessary for FriendlyErrorsPlugin
    watchOptions: {
      poll: config.dev.poll
    }
  },

2. 在config/index.js中配置代理proxyTable

 proxyTable: {
      '/jssl': { // 程序中的地址
        target: 'http://arcgis服务器ip:6080/arcgis/rest/services',
        changeOrigin: true,
        secure: false,
        pathRewrite: {
          '^/jssl/': '/' // 把程序中的地址转换成“真实地址”+‘/jssl’后面的部分,如‘/jssl/servicename/mapservice/',被转换成'http://arcgis服务器ip:6080/arcgis/rest/services/servicename/mapservice/'
        }
      }

 

你可能感兴趣的:(cros,web)