SendGrid在发送模板电子邮件时返回错误



我正在使用sendgrid-ruby-gem发送电子邮件模板,但它返回了一个错误:

Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true

我的代码如下:@sendgrid = SendGrid::API.new(api_key: 'api_key', host: 'localhost')result = @sendgrid.client.mail._('send').post(request_body: template)

我的发展.rb:

config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
config.action_mailer.asset_host = 'http://localhost:3000'

知道它为什么返回这个错误吗?我已经浏览了gem文档,但找不到任何关于这个错误的信息。

我使用的是带有ruby 2.6.5的rails 5。

在我的例子中,我在config/environments/[xxx].rb:中这样实现了它

config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { host: 'https://portal.com.br' }
# Sendgrid port configuration
config.action_mailer.smtp_settings = {
:address              => 'smtp.sendgrid.net',
:port                 => '587',
:authentication       => :plain,
:domain               => 'xxx.com.br',
:user_name            => 'solutions',
:password             => 'dns232323',
:enable_starttls_auto => true
}
Rails.application.routes.default_url_options[:protocol] = "https"

相关内容

  • 没有找到相关文章

最新更新