gpt4 book ai didi

ruby - 在 IronWorker 中调试邮件发送

转载 作者:数据小太阳 更新时间:2023-10-29 08:09:23 25 4
gpt4 key购买 nike

我正在尝试使用 mail gem 从 IronWorker 任务发送电子邮件。运行脚本可以在我的本地系统 (OS X) 上运行,但在 IronWorker 上以相同的参数运行时会失败。我是 IronWorker 和 mail gem 的新手,所以我不知道从哪里开始调试。这是错误消息的文本。

/task/email.rb:5:in `block in <top (required)>': undefined method `[]' for nil:NilClass (NoMethodError)     
from /task/__gems__/gems/mail-2.4.4/lib/mail/mail.rb:106:in `instance_eval'
from /task/__gems__/gems/mail-2.4.4/lib/mail/mail.rb:106:in `defaults'
from /task/email.rb:3:in `<top (required)>'
from /usr/local/lib/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /usr/local/lib/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from __runner__.rb:213:in `<main>'

这是我的代码:

require 'mail'

Mail.defaults do
delivery_method :smtp, {
address: params['address'],
port: 587,
domain: params['domain'],
user_name: params['username'],
password: params['password'],
authentication: 'plain',
enable_starttls_auto: true
}
end

Mail.deliver do
to "#{params['to_name']} <#{params['to_address']}>"
from "#{params['from_name']} <#{params['from_address']}>"
subject "Mail test"
text_part do
body params['text']
end
html_part do
content_type 'text/html; charset=UTF-8'
body params['html']
end
end

请注意,我之前在本地收到此错误,但这是由于在默认设置中使用 username 而不是 user_name 引起的。有什么想法吗?

最佳答案

我不确定,但看起来“params”是 nil,你能不能在使用 in 之前尝试检查它。如果你在你的 worker 中使用单独的命名空间(比如类中的 worker body),它可能会发生

关于ruby - 在 IronWorker 中调试邮件发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17607616/

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