我已将node js
个快递项目上传到AWS lambda
。以下是我的处理程序代码,另存为exports.js
:
const
express = require('express'),
bodyParser = require('body-parser'),
request = require('request'),
app = express().use(bodyParser.json()); // creates express http server
exports.handler = function(callback){
request('http://localhost/php-rest/api.php/routes?filter=route_short_name', function(error, response, body) {
if (!error && response.statusCode == 200) {
message = JSON.stringify(JSON.parse(body));
return callback(message, false);
} else {
return callback(null, error);;
}
});
}
app.get('/exports.handler', function(req, res) {
exports.handler(function(err, data){
if(err) return res.send(err);
res.send(data);
});
});
处理程序代码与我的app.js
文件是分开的。在AWS Lambda上进行测试时出现以下错误:
{
"errorMessage": "Handler 'handler' missing on module 'exports'"
}
答案 0 :(得分:2)
如果您没有索引和启动功能,通常会出现。您可以在导出处理程序中将其定义为索引:
exports.handler = function index(event, context, callback) {
// Your start code here
}
答案 1 :(得分:2)