2017-07-18 8 views
1

SwiftでMailGun APIを使用して電子メールを送信しようとしています。私はmailgunで無料アカウントを作成して有効化しました。インストールされたポッド。IOS Swift Mailgunが電子メールを送信しない

cocoapods mailgun pod

私はメッセージを取得していますボタンを押すと、「メールが送信された」が、私はこのメールを受信して​​いない、またそれがmailgunで表示し、「ログ」または「レポート」です。

私も追加され、私はIOSシミュレータと実際のデバイス運上で実行するように結ば

「受信者を認定」するために私の個人的な電子メールを確認しました。

@IBAction func dddd(_ sender: Any) { 

    let mailgun = MailgunAPI(apiKey: "key-<my_key from mailgun>, clientDomain: "sandboxe437***********.mailgun.org") 

    mailgun.sendEmail(to: "[email protected]", from: "Test User <[email protected]", subject: "This is a test15", bodyHTML: "<b>test<b>") { mailgunResult in 

     if mailgunResult.success{ 
      print("Email was sent") 
     }else{ 
      print("error") 
     } 

} 

私は何を逃したのですか?

は@Stalker、あなたのfromパラメータは決算>を持っていない

ストーカー

答えて

2

、ありがとうございます。私はあなたがそれを見て願っています。 あなたはすでに、あなたのネットワーク要求のために、この余分な依存関係mailgun podは必要Alamofireを使用していない場合は、次のヘッダーで

スウィフト3.2

import Alamofire 

    let parameters = [ 
        "from": "[email protected]", 
        "to": "[email protected]", 
       "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)") 
       } 

を、あなたがbase64でエンコードされた文字列でYOUR-BASE64ENCODED-KEYを交換する必要が"API:YOUR-SECRET-API-KEY"ここでYOUR-SECRET-API-KEYはMailgunダッシュボードにあります。

また、YOUR-DOMAINをあなたのMailgunドメインに置き換えます。

これで、Mailgunを使って電子メールを送信してもらうとよいでしょう。