首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AWS Lambda节点-中断后重新启动

AWS Lambda节点-中断后重新启动
EN

Stack Overflow用户
提问于 2019-08-23 08:50:13
回答 2查看 180关注 0票数 0

我有一个奇怪的问题,我有一个基于claudia.js api构建器的aws后端。我发现了一件奇怪的事情,当我注册为新用户时,脚本被拒绝,lambda检索错误并停止执行,在DB中没有创建新用户。但是,当我修复数据并在db上重新提交注册时,我看到两个新用户,一个拥有正确的数据,另一个具有以前的错误数据,似乎在拒绝之后的前一个结束时开始了一个新的lambda执行。下面是一些示例代码:

代码语言:javascript
复制
api.post('/users/register', function(request) {

    return new Promise((resolve, reject) => {

        if ( typeof request.post !== 'undefined'){
            if ( typeof request.post.email !== 'undefined' && typeof request.post.name !== 'undefined' && typeof request.post.password !== 'undefined' && typeof request.post.repassword !== 'undefined' ){
                var userData = request.post;
                userData.email = xssFilters.inHTMLData(userData.email);
                userData.name = xssFilters.inHTMLData(userData.name);
                userData.password = xssFilters.inHTMLData(userData.password);
                userData.repassword = xssFilters.inHTMLData(userData.repassword);
            }else{
                reject("Missing some data");            
            }

            if ( userData.name.toLowerCase() == 'self' || userData.name == ''){
                reject("Username forbidden"); 
            // here the scripts stop execution on error but on the next execution seems that togheter the new function start also the previous right after the reject
            }

        }
        else{
            reject("Missing POST data - application/x-www-form-urlencoded");            
        }

     // here the db insert ect..

    });

},{ success : { code : 200}, error : { code : 401 } });

实际例子:

1°尝试用户:自我(禁止)电子邮件:无论注册->错误,禁止用户->没有添加db行

2°尝试用户: newUser (允许)电子邮件:在db上注册-> ok ->我找到两个新用户: newUser和self

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-23 14:19:11

您需要在拒绝后返回lambda函数,并请设置

context.callbackWaitsForEmptyEventLoop = false;

票数 1
EN

Stack Overflow用户

发布于 2019-08-23 09:35:40

对于那些有同样问题的人,似乎在拒绝后设置return;解决了问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57622767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档