【问题标题】:JovoFramework - LAUNCH - isNewUser() is always false on AWS LambdaJovoFramework - LAUNCH - isNewUser() 在 AWS Lambda 上始终为 false
【发布时间】:2018-03-29 08:59:55
【问题描述】:

我正在使用 jovo 框架(版本 1.0.0),我面临以下问题:

在 app.js 中:

app.setHandler({

  'LAUNCH': function() {
    if(this.user().isNewUser()) {
      this.tell('This will never be told on AWS Lambda.');
    }
  }
});

在本地运行时,我可以区分 (isNewUser === true) 和 (isNewUser === false),但只要我在 AWS 上将其作为 lambda 函数执行,isNewUser 总是错误的。这是为什么呢?

另外

NEW_USER': function() {
}

也没有触发。

本地机器上的系统环境:

  • Windows 10 家庭版
  • NodeJS:v8.9.1

Lambda 函数:

  • NodeJS 6.10

非常感谢您提供的任何帮助。

【问题讨论】:

    标签: aws-lambda jovo-framework


    【解决方案1】:

    'NEW_USER'this.user().isNewUser() 都需要访问数据库,其中存储了每个用户的会话数。

    当您在本地进行原型设计时,它使用默认的File Persistence 数据库集成,将数据保存到本地db/db.json 文件中。

    但是,在 AWS Lambda 上,本地数据库不起作用,因此您需要设置 DynamoDB 配置。在此处了解更多信息:Jovo Framework Docs > Database Integrations > DynamoDB

    请记住授予您的 Lambda 函数角色访问 DynamoDB 数据的正确权限:AWS Lambda Permissions Model

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-19
      • 2022-06-28
      • 2012-03-29
      • 2015-03-08
      • 1970-01-01
      • 1970-01-01
      • 2018-12-04
      • 2020-05-16
      相关资源
      最近更新 更多