Javascript 如何使用aws lambda导入函数?
我正在使用Javascript 如何使用aws lambda导入函数?,javascript,amazon-web-services,aws-lambda,Javascript,Amazon Web Services,Aws Lambda,我正在使用api网关将post请求调用到我的lambda中,它检查httpMethod是否为post,如果是post,则执行以下操作 默认情况下,入口点是我保留的index.js,但是我想如果我使用的是相同的lambda,我还可以检查它是否是get-httpMethod,如果是,那么执行以下操作。但是我想分开我的代码。对于相同的lambda函数,我可以添加文件。因此,我尝试添加另一个名为post.js的文件,然后在index.js const postHandler = require('.
api网关
将post请求调用到我的lambda
中,它检查httpMethod是否为post
,如果是post,则执行以下操作
默认情况下,入口点是我保留的index.js
,但是我想如果我使用的是相同的lambda
,我还可以检查它是否是get-httpMethod
,如果是,那么执行以下操作。但是我想分开我的代码。对于相同的lambda
函数,我可以添加文件。因此,我尝试添加另一个名为post.js
的文件,然后在index.js
const postHandler = require('./post.js');
exports.handler = async (event, context) => {
try {
const httpm = event.context["http-method"];
const rbody = event["body-json"];
console.log(postHandler, 'post handler function?'); // { postHandler: [AsyncFunction] } 'post handler function?'
console.log(httpm, 'httpmhttpm'); // 'POST'
if (httpm === 'POST') return postHandler(rbody);
} catch (e) {
return e;
}
};
不知何故,它没有在post.js
中传递值或调用导出的函数
index.js
const postHandler = require('./post.js');
exports.handler = async (event, context) => {
try {
const httpm = event.context["http-method"];
const rbody = event["body-json"];
console.log(postHandler, 'post handler function?'); // { postHandler: [AsyncFunction] } 'post handler function?'
console.log(httpm, 'httpmhttpm'); // 'POST'
if (httpm === 'POST') return postHandler(rbody);
} catch (e) {
return e;
}
};
post.js
//这里没有做任何特殊的事情,但是这些控制台都没有显示出来
exports.postHandler = async (rbody) => {
console.log('I am inside postHandler()');
console.log(rbody);
return {status: true};
};
提前感谢您的建议/帮助。
//默认导出(更改post.js文件)
module.exports=异步(rbody)=>{
log('我在postHandler()中');
控制台日志(rbody);
返回{status:true};
};
//或者!
//更改(index.js文件)
const{postHandler}=require('./post.js')对不起,是的。问题是错误的导入const{postHandler}=require('./post.js')代码>@AlexOwl噢,天哪~我怎么会错过那该死的!我们太累了