【问题标题】:Action Mailbox saying "Missing required Mailgun API key" even though key is present即使存在密钥,操作邮箱也会显示“缺少所需的 Mailgun API 密钥”
【发布时间】:2021-05-17 17:31:54
【问题描述】:

我已将 Mailgun 设置为将电子邮件转发到我的 /rails/action_mailbox/mailgun/inbound_emails/mime 端点。

当我的端点收到请求时,它会给出以下错误:

ArgumentError(缺少必需的 Mailgun API 密钥。设置 action_mailbox.mailgun_api_key 在您的应用程序的加密 凭据或提供 MAILGUN_INGRESS_API_KEY 环境 变量。)

但是,MAILGUN_INGRESS_API_KEY 实际上是设置的。当我在控制台中运行 ENV["MAILGUN_INGRESS_API_KEY"] 时,我看到了我的 API 密钥。我什至粘贴了API key determination code from GitHub 看看那里是否有问题,但我得到的返回值是我的实际 API 密钥。

关于问题可能是什么的任何想法?

【问题讨论】:

    标签: ruby-on-rails action-mailbox


    【解决方案1】:

    只是检查一些东西,看看是否可以纠正,据我所知,你比我更了解 Rails。

    • 你是否在开发环境配置中设置了mailgun api_key config/environments/development.rb
    config.action_mailer.delivery_method = :mailgun
      config.action_mailer.mailgun_settings = {
        api_key: ENV['MAILGUN_INGRESS_API_KEY'],
        domain: 'your_domain.com',
        # api_host: 'api.eu.mailgun.net'  # Uncomment this line for EU region domains
      }
    

    现在让我们做一个测试,访问 (bin.mailgun.net) 并获取粘贴 bin url 然后运行rails c

    mg_client = Mailgun::Client.new(ENV["MAILGUN_INGRESS_API_KEY"], "bin.mailgun.net", "aecf68de_you_got_visiting_site", ssl = false)
    message_params = {  from: 'bob@sending_domain.com',
                        to: 'sally@example.com',
                        subject: 'The Ruby SDK is awesome!',
                        text: 'It is really easy to send a message!'
                      }
    result = mg_client.send_message("your_sending_setup_on_mailgun_domain.com", message_params)
    
    puts result.inspect
    

    看看有什么消息,你可能会明白。对于开发也可能存在环境配置问题,您必须为生产设置不同的设置。还要检查 paste-bin 是否受到任何打击。

    【讨论】:

      猜你喜欢
      • 2018-01-26
      • 2023-02-10
      • 2017-03-09
      • 1970-01-01
      • 1970-01-01
      • 2016-08-29
      • 1970-01-01
      • 2019-02-11
      • 1970-01-01
      相关资源
      最近更新 更多