javascript - Karma 测试:在公司代理后面加载 JS 文件时出错
问题描述
我正在使用 Open WC Karma-ESM 插件并尝试运行我的测试。我已将必要的脚本添加到我的package.json中:
"test": "npx karma start --coverage",
"test:gate": "npx karma start",
"test:watch": "npx karma start --coverage --auto-watch=true --single-
run=false",
但是,当我npm run test时,我在无头 Chrome 的终端中收到此错误:
SyntaxError: Unexpected token '<'Chrome 79.0.3945 (Mac OS X 10.14.6) ERROR
Uncaught SyntaxError: Unexpected token '<'
在浏览器中,我可以看到它成功加载了 Karma 的初始文件以运行其测试:
http://localhost:9876/
http://localhost:9876/socket.io/socket.io.js
http://localhost:9876/karma.js
http://localhost:9876/socket.io/?EIO=3&transport=polling&t=My6P1Ln
http://localhost:9876/socket.io/?EIO=3&transport=polling&t=My6P1M3&sid=Cc2mqcjmMzmq2IN1AAAB
http://localhost:9876/socket.io/?EIO=3&transport=polling&t=My6P1M4&sid=Cc2mqcjmMzmq2IN1AAAB
然后它遇到了101 Switching Protocols的响应。并且响应正文包含所有Unexpected token <错误和Page Restricted错误:
ws://localhost:9876/socket.io/?EIO=3&transport=websocket&sid=Cc2mqcjmMzmq2IN1AAAB
因此,我的公司代理限制并拒绝了这些页面,它们返回 404,从而解释了错误。我已更新我的 Chrome 代理首选项以绕过这些主机和域的代理设置:localhost、127.0.0.1
但这并没有解决问题。
只是为了抛出一个曲线球,当我运行sudo npm run test它工作得很好。现在这完全让我感到困惑。
非常感谢任何提示 - 在此先感谢。与这个斗争。
解决方案
当您将 http_proxy 和 https_proxy 定义为环境变量时,就会发生此错误。解决方法是添加一个新的环境变量 NO_PROXY=localhost,127.0.0.1。这个虫子害了我好几天。我希望它可以帮助某人。
推荐阅读
- javascript - 在 Yii2 上使用 lib CountUp.js
- excel - 在特定工作表上运行 VBA
- node.js - 如何访问打字稿中方法的所有参数?
- ansible - Make a file executable with Ansible, then make Ansible execute it
- javascript - 如何将 javascript 文件转换为 .exe 文件
- r - GGplot将“单词”添加到y轴标签
- python - 根据条件对数据子集进行模糊处理
- r - 从频率表生成 data.frame
- python - 将列表与 Python 中的 int 进行比较
- c++ - 如何在不使用数组的情况下存储输入?