aws-lambda - 为什么我不能等待对 LambdaHelper.callAsync 的调用?
问题描述
我正在后端使用 node.js 开发一个 vue.js 应用程序。后端也由 AWS 上的 lambda 服务器托管。
在后端,我正在尝试执行以下操作:
let success = false;
let lh = new LambdaHelper();
success = await lh.callAsync('MyController', 'myMethod', params);
这会调用 MyController.myMethod(params)。但它不等待。
如果我在调用 lh.callAsync(...) 后立即放置一个控制台日志并打印出成功的值,它会打印出未定义的。如果我在 myMethod 中放置一些控制台日志,它会在打印出成功的值后将它们打印出来。这意味着它没有等待对 lh.callAsync(...) 的调用。
现在,如果我将最后一行替换为...
success = await require('MyController').myMethod(params)
...它工作得很好(即它等待 myMethod(...) 并在打印 myMethod(...) 中的控制台日志后打印成功的值(true 或 false))。
等待通过 LambdaHelper.callAsync(...) 调用方法有什么特殊技巧吗?谢谢。
解决方案
推荐阅读
- python - 对齐天文图像
- c# - POST 表单中的错误:模型绑定的复杂类型不能是抽象类型或值类型,并且必须具有无参数构造函数
- c - C链表程序不会显示字符串
- html - 在导航栏中垂直居中下拉菜单
- java - java.nio.file.Files 的哪些方法遵循符号链接,哪些不遵循?
- javascript - Why does my AWS Lambda function keep timing out?
- c# - 实现dotnet mvc的简单成就系统
- python - 无法定位元素,无法找到 iframe 或页面加载
- python - 如何将函数结果和调用它的字符串都传递给函数?
- python - python - 如何修复'ValueError:检查输入时出错:预期dense_1_input具有形状(4,)但得到形状为(1,)的数组'错误?