【问题标题】:mysql2 TypeError: f.ClientHandshake is not a constructormysql2 TypeError: f.ClientHandshake 不是构造函数
【发布时间】:2019-04-30 15:50:09
【问题描述】:

我正在尝试使用 mysql2 连接到 RDS MySQL 实例。当我在本地使用该软件包时,一切正常。但是,当我在 AWS Lambda 函数中使用它时,我得到了这个神秘的错误:

TypeError: f.ClientHandshake is not a constructor
at new g (/var/task/index.js:275:62824)
at new o (/var/task/index.js:275:224046)
at e.exports.getConnection (/var/task/index.js:275:218705)
at e.exports.execute (/var/task/index.js:275:220197)
at /var/task/index.js:275:372341
at new Promise (<anonymous>)
at c.execute (/var/task/index.js:275:372308)
at /var/task/index.js:357:14189
at E (/var/task/index.js:316:24416)
at Generator._invoke (/var/task/index.js:316:24204)

知道问题是什么吗?我确信角色/安全组都已正确配置。

【问题讨论】:

标签: aws-lambda amazon-rds mysql2 node-mysql2


【解决方案1】:

原来在 Webpack 中禁用缩小解决了这个问题。

这可以通过更新webpack.config.js 来包含

optimization: {
    // We no not want to minimize our code.
    minimize: false
},

【讨论】:

  • 谢谢。这太不可思议了。我不敢相信您必须禁用缩小才能使其在 AWS Lambda 中工作。这是我今晚 2 小时的时间,没了。
猜你喜欢
  • 2019-08-14
  • 2018-06-27
  • 2016-04-16
  • 2021-11-26
  • 2019-10-27
  • 2018-07-18
  • 2016-12-20
相关资源
最近更新 更多