gpt4 book ai didi

javascript - 通过 javascript 尝试 gcloud 函数命令时 json 无效

转载 作者:行者123 更新时间:2023-12-02 22:56:02 24 4
gpt4 key购买 nike

我尝试使用 Jest 运行示例测试来验证我的 Google Cloud 功能是否正常工作,但我不断收到以下错误。

我尝试直接在 Windows Power shell 中运行以下命令,但仍然出现相同的错误,可以使用双引号前的\来转义。

Error: Command failed: gcloud beta functions call cf-1 --region europe-west1 --data '{"data":"eyJkYXRhIjoiMSJ9"}'
ERROR: (gcloud.beta.functions.call) Invalid value for [--data]: Is not a valid JSON: No JSON object could be decoded

测试文件

const childProcess = require('child_process');

describe('Test CF', () => {
it('print outs the error message when received JSON is blank', done => {
const msg = { data: '1' };
const encodedMsg = Buffer.from(JSON.stringify(msg)).toString('base64');
const data = JSON.stringify({ data: encodedMsg });
const executeResultOutput = childProcess.execSync(`gcloud beta functions call cf-1 --region europe-west1 --data '${data}'`).toString();

const logs = childProcess
.execSync(
`gcloud functions logs read cf-1 --region europe-west1 --execution-id ${executionIdObj}`,
)
.toString();

expect(logs).toEqual(expect.stringContaining('Error..'));
});
});

更新#1:仍然是同样的问题...

enter image description here

最佳答案

您使用的命令行语法适用于 Linux。

--data 部分更改为 Windows:

--data "{\"data\":\"eyJkYXRhIjoiMSJ9\"}"

请注意,您必须转义引号。

关于javascript - 通过 javascript 尝试 gcloud 函数命令时 json 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57975914/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com