GCP Secret Manager 抛出:"path" 参数必须是字符串类型
GCP Secret Manager throws: "path" argument must be of type string
我正在努力使用 GCP Secrets Manager from Node.js 8.x (I know, it's ancient, but it's the newest GA Node runtime on Cloud Functions). However, when I run their example, it keeps throwing gRPC error from this line:
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type object
我正在尝试测试的代码行:
const secretClient = new SecretManagerServiceClient();
如果我在节点 8.x 或节点 10.x 上 运行,并且如果我使用最新版本的秘密库 (3.0.0
) 或 Node 的旧版本 8.x (1.2.1
)
出现这个错误是因为库是 运行 browser 而不是 Node 模式,这迫使它避免"fallback" 模式,试图错误地查找 gRPC 路径。这个决定是因为 window
在范围内,欺骗了 isBrowser
logic.
根本原因
根本原因是 jest
被用来测试,default runs in jsDom
mode,插入了像 window
这样的全局变量。
修复
将以下内容添加到您的 jest.config.json
文件中。
testEnvironment: 'node',
我正在努力使用 GCP Secrets Manager from Node.js 8.x (I know, it's ancient, but it's the newest GA Node runtime on Cloud Functions). However, when I run their example, it keeps throwing gRPC error from this line:
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type object
我正在尝试测试的代码行:
const secretClient = new SecretManagerServiceClient();
如果我在节点 8.x 或节点 10.x 上 运行,并且如果我使用最新版本的秘密库 (3.0.0
) 或 Node 的旧版本 8.x (1.2.1
)
出现这个错误是因为库是 运行 browser 而不是 Node 模式,这迫使它避免"fallback" 模式,试图错误地查找 gRPC 路径。这个决定是因为 window
在范围内,欺骗了 isBrowser
logic.
根本原因
根本原因是 jest
被用来测试,default runs in jsDom
mode,插入了像 window
这样的全局变量。
修复
将以下内容添加到您的 jest.config.json
文件中。
testEnvironment: 'node',