我不明白为什么 meteor 仅在生产中发送电子邮件失败。 在开发模式下,邮件发送没有任何问题,而在生产模式下,当应用程序与 Node 一起运行时,邮件会失败。
这是我的版本:
封装:
- 电子邮件@1.0.12
开发中:
- meteor 1.3.2.4
生产中:
- Node v4.4.5
Sending email: to: to@email.test, from: 'source@email.test', subject: My subject, text: basic email content
TypeError: Cannot assign to read only property 'reconnectCount' of false at SMTPClient._actionAUTHComplete (/var/www/bundle/programs/server/npm/node_modules/meteor/email/node_modules/simplesmtp/lib/client.js:823:34) at SMTPClient._onData (/var/www/bundle/programs/server/npm/node_modules/meteor/email/node_modules/simplesmtp/lib/client.js:329:29) at emitOne (events.js:77:13) at TLSSocket.emit (events.js:169:7) at readableAddChunk (_stream_readable.js:153:18) at TLSSocket.Readable.push (_stream_readable.js:111:10) at TLSWrap.onread (net.js:531:20)
感谢您的帮助:)
最佳答案
解决方案是@Tdm建议的:使用meteor提供的node版本。
但是,与需要最新版本的 Node 的 CI(eslint、sass-lint)集成有点棘手,所以我是这样进行的:
- 对于我的 CI lint 测试,我使用最新版本 (v4.4)。在gitlab CI中设置
- 对于我的生产环境,我构建了另一台基于 Node v0.10.46 的 Docker 计算机(即使当前的 Meteor 基于 v0.10.45)。
感谢 Tdm 指出问题!
关于javascript - 发送电子邮件时出现 meteor 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38151018/