最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

越来越null作为回调AWS拉姆达结果

IT培训 admin 8浏览 0评论

越来越null作为回调AWS拉姆达结果

我试图验证OTP使用sendotp NPM模块,但sendOTP.verify方法我得到的回调为空的结果。我如何可以验证是否OTP已被验证与否。

sendOTP -

exports.handler = async (event,context,callback) => {
    const SendOtp = require('sendotp');
    const sendOTP = new SendOtp('260981AZN8sH3O5c551802');
    let mobileNum = event.mobile.toString();
    let otp = event.otp.toString();
    sendOTP.verify(mobileNum, otp, (error, data) => {
        callback(null,{statusCode:200,body:data.type});
    });
}
回答如下:

有两个半波函数调用类型 - 同步和异步。同步调用会阻塞调用者将等待响应。异步调用类型不会阻塞调用者,它会返回它被称为后,立即与无 - null - 响应。

如果你把你的函数的前async关键字,您指定的函数异步调用,因此null响应您得到预期的行为。

如果你不希望它是异步的,那么改变你的头

exports.handler = (event,context,callback) => 

需要注意的是无(当您订阅lambda函数到S3的事件,它总是会被异步调用即)尊重你的选择调用拉姆达函数时,一些服务会用自己的预定义的λ调用类型。

越来越null作为回调AWS拉姆达结果

我试图验证OTP使用sendotp NPM模块,但sendOTP.verify方法我得到的回调为空的结果。我如何可以验证是否OTP已被验证与否。

sendOTP -

exports.handler = async (event,context,callback) => {
    const SendOtp = require('sendotp');
    const sendOTP = new SendOtp('260981AZN8sH3O5c551802');
    let mobileNum = event.mobile.toString();
    let otp = event.otp.toString();
    sendOTP.verify(mobileNum, otp, (error, data) => {
        callback(null,{statusCode:200,body:data.type});
    });
}
回答如下:

有两个半波函数调用类型 - 同步和异步。同步调用会阻塞调用者将等待响应。异步调用类型不会阻塞调用者,它会返回它被称为后,立即与无 - null - 响应。

如果你把你的函数的前async关键字,您指定的函数异步调用,因此null响应您得到预期的行为。

如果你不希望它是异步的,那么改变你的头

exports.handler = (event,context,callback) => 

需要注意的是无(当您订阅lambda函数到S3的事件,它总是会被异步调用即)尊重你的选择调用拉姆达函数时,一些服务会用自己的预定义的λ调用类型。

发布评论

评论列表 (0)

  1. 暂无评论