函数计算中,怎么拿到 RequestID 放到响应体里返回呢?
app.post("/xxx",(req, res) => {}
nodejs 云函数
在函数计算中,可以通过以下方式获取 RequestID 并将其放入响应体中返回:
const AWS = require('aws-sdk');
const lambda = new AWS.Lambda();
app.post("/xxx", async (req, res) => {
try {
const requestId = req.headers['x-lambda-request-id']; // 从请求头中获取 RequestID
const response = await lambda.invoke({ FunctionName: 'your_function_name', Payload: JSON.stringify(req.body) }, (err, data) => {
if (err) {
console.error(err);
res.status(500).send({ error: 'Error invoking function' });
} else {
// 将 RequestID 放入响应体中返回
res.json({ ...JSON.parse(data.Payload), requestId });
}
});
} catch (error) {
console.error(error);
res.status(500).send({ error: 'Error processing request' });
}
});
上述代码中,我们使用 req.headers['x-lambda-request-id']
从请求头中获取 RequestID。然后,通过调用 lambda.invoke
方法来执行目标函数,并将 RequestID 放入响应体中返回。请确保替换 'your_function_name'
为目标函数的名称。
req.headers['x-fc-request-id'] || uuidv4();
——此回答整理自钉群:阿里函数计算官网客户
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。