Nodejs - 将 json 对象传递给 event.handler 函数
Nodejs - Passing json object to a event.handler function
提前致歉,因为这是我第一次使用 NodeJs。
我们正在使用名为 QTest Pulse 的产品。简单来说,我们有一个 webhook,它连接到在服务器上执行并产生结果的 nodejs 文件。我正在尝试设置我的本地环境来调试文件以对其进行更改。
我们通常使用 bash 脚本 调用文件,如下所示
curl -X POST \
https://pulse-7.qtestnet.com/webhook/ \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-d @payload.json
并且 payload.json 包含如下数据
{"testcycle" : "178173", "result" : "encrypted data", "projectId" : "90354"}
服务器上的文件parser.js包含
function processPayload(payload) {
const projectId = payload.projectId;
const cycleId = payload.testcycle;
console.log(projectId);
console.log(cycleId);
}
exports.handler = function (
{event: body, constants, triggers},
context,
callback
) {
const formattedResults = processPayload(body);
};
我试图创建一个名为 runner.js 的文件来调用 parser.js
中的事件
const parser = require('./Parser');
const fs = require('fs');
const jsonContent = fs.readFileSync('payload.json').toString;
let output = parser.handler({body: jsonContent, constants: "", triggers: ""}, "", "");
console.log(output);
当我 运行 这个时,我总是把 body inside parser.js 当作未定义的。我也尝试过硬编码值而不是从文件中读取,仍然遇到同样的问题。提前致谢。
2 个错误:
打字错误:fs.readFileSync('payload.json').toString
你忘了打电话给toString()
你的解构是错误的。您已经在发送正文了。
exports.handler = 函数 (
{body, 常量, 触发器},
语境,
打回来
) {
const formattedResults = processPayload(body);
};
提前致歉,因为这是我第一次使用 NodeJs。
我们正在使用名为 QTest Pulse 的产品。简单来说,我们有一个 webhook,它连接到在服务器上执行并产生结果的 nodejs 文件。我正在尝试设置我的本地环境来调试文件以对其进行更改。
我们通常使用 bash 脚本 调用文件,如下所示
curl -X POST \
https://pulse-7.qtestnet.com/webhook/ \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-d @payload.json
并且 payload.json 包含如下数据
{"testcycle" : "178173", "result" : "encrypted data", "projectId" : "90354"}
服务器上的文件parser.js包含
function processPayload(payload) {
const projectId = payload.projectId;
const cycleId = payload.testcycle;
console.log(projectId);
console.log(cycleId);
}
exports.handler = function (
{event: body, constants, triggers},
context,
callback
) {
const formattedResults = processPayload(body);
};
我试图创建一个名为 runner.js 的文件来调用 parser.js
中的事件const parser = require('./Parser');
const fs = require('fs');
const jsonContent = fs.readFileSync('payload.json').toString;
let output = parser.handler({body: jsonContent, constants: "", triggers: ""}, "", "");
console.log(output);
当我 运行 这个时,我总是把 body inside parser.js 当作未定义的。我也尝试过硬编码值而不是从文件中读取,仍然遇到同样的问题。提前致谢。
2 个错误:
打字错误:
fs.readFileSync('payload.json').toString
你忘了打电话给toString()
你的解构是错误的。您已经在发送正文了。
exports.handler = 函数 ( {body, 常量, 触发器}, 语境, 打回来 ) { const formattedResults = processPayload(body); };