Tom*_*káč 5 amazon-web-services node.js express aws-lambda
我用来aws-serverless-express
为我的 Express Web 服务提供 AWS Lambda 处理程序。
Lambda 可以工作,但是我无法从 Lambda 抛出错误。我尝试使用 try/catch 捕获整个无服务器代理,但即使应用程序抛出错误,它仍然会进入success状态。
索引.js
'use strict';
const awsServerlessExpress = require('aws-serverless-express');
const app = require('./dist/app');
const server = awsServerlessExpress.createServer(app);
exports.handler = (event, context, callback) => {
try {
context.callbackWaitsForEmptyEventLoop = false;
context.succeed = (response) => {
callback(null, response);
};
return awsServerlessExpress.proxy(server, event, context);
} catch (e) {
callback(e);
}
};
Run Code Online (Sandbox Code Playgroud)
我有一个错误处理中间件(用作最后一个),它可以工作,但是将错误传递给next()
或重新抛出错误似乎不会触发捕获index.js
.
错误处理程序.js
const handleErrors = (err, req, res, next) => {
res.setHeader('Content-Type', 'application/xml');
res.status(200).send(DEFAULT_ERROR);
next(err);
}
Run Code Online (Sandbox Code Playgroud)
有谁知道如何成功地从 Express 应用程序抛出错误并在处理程序中捕获?
归档时间: |
|
查看次数: |
767 次 |
最近记录: |