将参数传递给节点中的 execFile
Passing arguments to execFile in node
我正在尝试使用他们的二进制文件连接到 browserstack 并将我的密钥作为参数传递。如果我在终端 window:
中执行此操作
./BrowserStackLocal --key ${BROWSERSTACK_KEY}
连接成功,我的密钥如期通过。但是我希望使用 execFile 通过节点 运行 这个二进制文件。下面是我的代码
const { execFile } = require('child_process');
function getConnection() {
execFile('./BrowserStackLocal', ['--key ${BROWSERSTACK_KEY}'], (err, stdout, stderr) => {
if (err) {
console.log(err);
} else
console.log(stdout);
});
}
然而,当我 运行 我的函数时,我得到以下信息:
BrowserStackLocal v7.1
*** Error: Atleast one argument is required!
To test an internal server, run:
./BrowserStackLocal --key <KEY>
Example:
./BrowserStackLocal --key DsVSdoJPBi2z44sbGFx1
To test HTML files, run:
./BrowserStackLocal --key <KEY> --folder <full path to local folder>
Example:
./BrowserStackLocal --key DsVSdoJPBi2z44sbGFx1 --folder /Applications/MAMP/htdocs/example/
所以它没有看到我的钥匙。我遵循了这里的指南:https://nodejs.org/api/child_process.html#child_process_child_process_execfile_file_args_options_callback 我认为我以正确的方式传递了论点,但我显然做错了什么。有人可以帮我吗?谢谢!
数组 ['--key ${BROWSERSTACK_KEY}']
将包含 space 的 单个 命令行参数传递给进程。要传递 两个 命令行参数(它可能期望的),请使用两个字符串:
execFile('./BrowserStackLocal', ['--key', '${BROWSERSTACK_KEY}'], ...
我认为 ${BROWSERSTACK_KEY}
只是您在实际密钥问题中的占位符...
我正在尝试使用他们的二进制文件连接到 browserstack 并将我的密钥作为参数传递。如果我在终端 window:
中执行此操作./BrowserStackLocal --key ${BROWSERSTACK_KEY}
连接成功,我的密钥如期通过。但是我希望使用 execFile 通过节点 运行 这个二进制文件。下面是我的代码
const { execFile } = require('child_process');
function getConnection() {
execFile('./BrowserStackLocal', ['--key ${BROWSERSTACK_KEY}'], (err, stdout, stderr) => {
if (err) {
console.log(err);
} else
console.log(stdout);
});
}
然而,当我 运行 我的函数时,我得到以下信息:
BrowserStackLocal v7.1 *** Error: Atleast one argument is required! To test an internal server, run: ./BrowserStackLocal --key <KEY> Example: ./BrowserStackLocal --key DsVSdoJPBi2z44sbGFx1 To test HTML files, run: ./BrowserStackLocal --key <KEY> --folder <full path to local folder> Example: ./BrowserStackLocal --key DsVSdoJPBi2z44sbGFx1 --folder /Applications/MAMP/htdocs/example/
所以它没有看到我的钥匙。我遵循了这里的指南:https://nodejs.org/api/child_process.html#child_process_child_process_execfile_file_args_options_callback 我认为我以正确的方式传递了论点,但我显然做错了什么。有人可以帮我吗?谢谢!
数组 ['--key ${BROWSERSTACK_KEY}']
将包含 space 的 单个 命令行参数传递给进程。要传递 两个 命令行参数(它可能期望的),请使用两个字符串:
execFile('./BrowserStackLocal', ['--key', '${BROWSERSTACK_KEY}'], ...
我认为 ${BROWSERSTACK_KEY}
只是您在实际密钥问题中的占位符...