我正在尝试使用Swift使用MailGun api发送电子邮件。我使用mailgun创建并激活了免费帐户。已安装的吊舱。
如果我按下按钮,我收到消息“电子邮件已发送”但我没有收到此电子邮件,也没有显示在mailgun“日志”或“报告”中。
我还添加并验证了我的个人电子邮件给“授权收件人”
我在IOS模拟器上运行并且实际设备没有运气。
@IBAction func dddd(_ sender: Any) {
let mailgun = MailgunAPI(apiKey: "key-<my_key from mailgun>, clientDomain: "sandboxe437***********.mailgun.org")
mailgun.sendEmail(to: "me@mail.com", from: "Test User <myemail@mail.com", subject: "This is a test15", bodyHTML: "<b>test<b>") { mailgunResult in
if mailgunResult.success{
print("Email was sent")
}else{
print("error")
}
}
任何建议我错过了什么?
谢谢,
潜行
答案 0 :(得分:2)
@Stalker,您的from
参数没有结束>
。我希望你见过它。
如果您已经使用 Alamofire 来处理网络请求,则无需额外的依赖mailgun pod
:
import Alamofire
let parameters = [
"from": "sender@whatyouwant.com",
"to": "anyRecipient@example.com",
"subject": "Subject of the email",
"text": "This is the body of the email."]
let header = [
"Authorization": "Basic YOUR-BASE64ENCODED-KEY",
"Content-Type" : "application/x-www-form-urlencoded"]
let url = "https://api.mailgun.net/v3/YOUR-DOMAIN/messages"
Alamofire.request(url,
method: .post,
parameters: parameters,
encoding: URLEncoding.default,
headers: header)
.responseJSON { response in
print("Response: \(response)")
}
在标题中,您必须将YOUR-BASE64ENCODED-KEY
替换为base64编码的字符串“API:YOUR-SECRET-API-KEY”,其中在您的Mailgun信息中心找到YOUR-SECRET-API-KEY
。
在网址中,您还将YOUR-DOMAIN
替换为您的Mailgun域。
有了这个,你应该通过Mailgun发送电子邮件。