当前位置: 首页>后端>正文

electron打包线上解决axios跨域问题

一、配置electron允许跨域

electron不是Web应用,而是将谷歌浏览器内核集成到electron框架,有点类似手机App,所以允许跨域是可以直接在electron配置的

1.1、找到background.js

配置webSecurity: false

async function createWindow () {
  const filePath = rootSrc + "\resources\bin\favicon.png";
  // Create the browser window.
  // 使用我们全局定义的的win,因为后面方法外用会用到
  win = new BrowserWindow({
    // 初始窗口
    width: 1200,
    height: 900,
    // 全屏
    // fullscreen: true,
    autoHideMenuBar: true, //隐藏菜单
    icon: filePath,
    webPreferences: {
      nodeIntegration: true, // 使渲染进程拥有node环境
      //关闭web权限检查,允许跨域
      webSecurity: false,
      // Use pluginOptions.nodeIntegration, leave this alone
      // See nklayman.github.io/vue-cli-plugin-electron-builder/guide/security.html#node-integration for more info
      nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,
      contextIsolation: !process.env.ELECTRON_NODE_INTEGRATION,
    },
  });
}

二、配置axios基础路径

这里我们配置electron允许跨域以后,
不需要通过devServe配置本地服务器

直接 baseUrl + 接口地址

axios.defaults.baseURL = 'http://192.168.0.227';

https://www.xamrdz.com/backend/3nk1940643.html

相关文章: