我正在尝试发送邮件请求,这是我的代码:
url = "https://api.mailgun.net/v3/MYDOMAIN/messages"
params = {
:from => "Excited User <manuelbruno05@gmail.com>",
:to => "bruno.brito.ln@gmail.com, YOU@YOUR_DOMAIN_NAME",
:subject => "Hello",
:text => "Testing some Mailgun awesomness!"
}
headers = {
:api => "MY-API-KEY"
}
RestClient.post url, params, headers
当我尝试发出请求时,响应为401 Unauthorized。使用 HttpRequester 发送请求工作正常(响应200)所以我的猜测是我在Rails中设置标头错误。我的问题:如何修复此代码?
答案 0 :(得分:0)
我刚刚经历了这一点,所以我将解决方案放在这里。您需要在Mailgun网站上的IP白名单中添加0.0.0.0/0。在API密钥列表的正下方。
答案 1 :(得分:0)
请确保您使用的是从仪表板获得的实际API密钥,而不是他们通过电子邮件发送给您的“密钥ID”。两者不一样!
答案 2 :(得分:0)
我收到了 401 Forbidden,因为它使用的是美国服务器,而我在欧盟。我不得不在 MailGun example Go
脚本中添加一行
// Create an instance of the Mailgun Client
mg:= mailgun.NewMailgun(yourDomain, privateAPIKey)
/// THIS is the line I had to add to get it to use the EU server.
mg.SetAPIBase(mailgun.APIBaseEU)