【发布时间】:2015-08-30 21:06:54
【问题描述】:
我正在尝试使用 nodemailer 发送邮件。该脚本适用于本地计算机,但我无法将 nodemailer 包含在 azure 移动服务中。在我的 package.json 中添加了 'nodemailer' : "*" 但仍然无法包含它。
日志说
TypeError: 无法读取未定义的属性“原型”
我注释掉了完整的逻辑,但错误仍然存在。终于注释掉了 var nodemailer = require('nodemailer');
错误消失了。
【问题讨论】:
-
您是否使用相同(或类似)版本的
node?您是否在本地使用 nodemailer 0.7 而在远程使用 1.0?能给个完整的stacktrace吗? -
你是对的。我的机器的节点版本是 0.10.29,在我的机器上是 0.8.28。知道如何在 azure-mobile-service 上更新 nodejs 的版本吗?或者如何安装与该版本兼容的依赖项。我检查了nodemailer版本,两台机器上都是一样的(1.3.0)。
-
无法帮助您,抱歉。 According to the developer,nodemailer 0.7.1 是最后一个兼容 0.8 的版本。您需要对代码进行一些更改 - nodemailer 1.x 与 0.x 版本不完全兼容。
-
您无法升级 Azure 移动服务上的节点版本。它对 0.8.28 有硬依赖。新产品中正在修复此依赖关系,但尚未发布 Node.js 的预览版,您必须将代码库迁移到新的 SDK。
标签: node.js azure azure-mobile-services nodemailer