gpt4 book ai didi

Meteor 说 MAIL_URL 变量未设置,但它是

转载 作者:行者123 更新时间:2023-12-02 06:38:26 24 4
gpt4 key购买 nike

我正在使用这个 Mandrill 包:

https://atmospherejs.com/wylio/mandrill

当我尝试发送电子邮件时,出现此错误:

I20150423-22:09:09.078(-7)? ====== BEGIN MAIL #0 ======
I20150423-22:09:09.078(-7)? (Mail not sent; to enable sending, set the MAIL_URL environment variable.)
I20150423-22:09:09.079(-7)? MIME-Version: 1.0
I20150423-22:09:09.079(-7)? From: admin@example.com
I20150423-22:09:09.079(-7)? To: victor@example.com
I20150423-22:09:09.079(-7)? Subject: Something something
I20150423-22:09:09.079(-7)? Content-Type: text/html; charset=utf-8
I20150423-22:09:09.079(-7)? Content-Transfer-Encoding: quoted-printable
I20150423-22:09:09.079(-7)?
I20150423-22:09:09.079(-7)? Some kind of message content.
I20150423-22:09:09.079(-7)? ====== END MAIL #0 ======

所以我进入 Meteor Shell 并得到了这个:

> process.env.MAIL_URL
'smtp://MY_MANDRILL_EMAIL:MY_MANDRILL_API_KEY@smtp.mandrillapp.com:587/'

呃,所以正在设置 MAIL_URL 变量......

为了确定,我将其放入 server 文件夹下的 mailer.js 文件中。

Meteor.startup(function () {
process.env.MAIL_URL = 'smtp://MY_MANDRILL_EMAIL:MY_MANDRILL_API_KEY@smtp.mandrillapp.com:587/';
});

发生同样的错误。这只是在本地主机中运行所有内容。

编辑 - 我可以正常工作,但我不知道为什么要这样做:

我通过一些控制台日志记录注意到,尽管在 Meteor.startup() 内部设置了环境变量,但电子邮件仍试图在设置环境变量之前被发送出去

我最终做的是在server/lib内创建一个mailer_variable.js文件

process.env.MAIL_URL = 'smtp://MY_MANDRILL_EMAIL:MY_MANDRILL_API_KEY@smtp.mandrillapp.com:587';
console.log('this is the mail_url: ', process.env.MAIL_URL);

这有效。但我不知道为什么。这当然不是 Mandrill 包作者所说的我应该做的......

最佳答案

我相信这与load order of Meteor有关。正是出于这个原因,我不建议在启动脚本中设置环境变量。

在 Linux/Mac 上设置此选项的正确方法是像这样启动 Meteor:

MAIL_URL="smtp://.../" meteor

export MAIL_URL="smtp://.../"
meteor

更多详细信息记录在此处:http://meteorpedia.com/read/Environment_Variables

关于Meteor 说 MAIL_URL 变量未设置,但它是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29839305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com