vite 项目启动时打开chrome 浏览器, 报错Request path contains unescaped characters?

vite 项目启动时打开chrome 浏览器, 报错,怎么改呢?

node:_http_client:160
      throw new ERR_UNESCAPED_CHARACTERS('Request path');
      ^

TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters

import { fileURLToPath, URL } from 'node:url'

import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'

// https://vitejs.dev/config/
export default defineConfig((command, mode) => {
  const env = loadEnv(mode, process.cwd());
  console.log(env.VITE_BROWSER)
  return {
    plugins: [
      vue(),
      vueJsx(),
    ],
    resolve: {
      alias: {
        '@': fileURLToPath(new URL('./src', import.meta.url))
      }
    },
    server: {
      host: "0.0.0.0",
      open: env.VITE_BROWSER
    }
  }
}

)

.env

VITE_BROWSER='C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe'
阅读 1.5k
avatarAI BotBETA

这个错误信息 TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters 通常是由于URL路径中包含了未转义的特殊字符。在你的代码中,你试图使用环境变量 VITE_BROWSER 来指定浏览器,这个环境变量被用于 server.open 选项。

问题可能出在环境变量 VITE_BROWSER 的值上。在你的 .env 文件中,你指定了浏览器的路径,路径中包含了反斜杠 \,这在字符串中是特殊字符,需要转义。

你可以尝试将 VITE_BROWSER 的值改为:

VITE_BROWSER='C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe'

或者使用正斜杠 /

VITE_BROWSER='C:/Program Files/Google/Chrome/Application/chrome.exe'

这样应该就可以解决这个问题。如果问题仍然存在,那可能是其他原因导致的,你可能需要进一步检查你的代码和环境设置。

3 个回答

我现在是这么改的
.env

BROWSER = chrome

chrome所在目录配置到环境变量中,C:\Program Files\Google\Chrome\Application
然后在vite.config.js中添加

  // 设置第三个参数为 '' 来加载所有环境变量,而不管是否有 `VITE_` 前缀。
  const env = loadEnv(mode, process.cwd(), '')

看了看官网,应该是直接直接写浏览器名字就行image.pngimage.png

AI答案正确,牛!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题