2017-08-24 6 views
0

Nodemailerを使用して添付ファイル付きの電子メールを送信しようとしています。私が何をしても、attachmentsのプロパティを指定すると、電子メールが空になります(添付ファイルなし、HTMLなし、テキストなし)。添付ファイルなしで電子メールを送信すると、期待どおりに動作します。ここで私が持っているコードは、これまでのところです:Nodemailerを使用して添付ファイル付きのメールが空になる

transporter.sendMail({ 
    to: `${toTitleCase(i.nome)} <${i.email}>`, 
    subject: 'Treinamentos', 
    text: 'hello!', 
    html: `Embedded image: <img src="cid:[email protected]"/>`, 
     attachments: [ 
      { 
       filename: 'newimg.jpg', 
       path: __dirname + '/src/img/newimg.jpg', 
       cid: '[email protected]' 
      } 
     ] 
    }, (err, info)=> { 
     console.log(err); 
     console.log(info); 
    }); 

私もcontent代わりのpath、同じ結果を使用して試してみました。 errコールバックが空であることにも注意してください。

+0

あなたのファイルに少なくとも1つの内容、 'contentDisposition: 'inline''がありません。私のコードを見ると、私はキーも追加します: 'encoding: 'base64''(これが必要なのかどうかわかりません) – yBrodsky

+0

この回答を返信するhttps://stackoverflow.com/a/45388543/7635845 –

+0

@SyedAyeshaBebeそれは私の質問に関係しています。私もGmailを使っていません。いずれにせよ、私は何が間違っているのかを理解し、それを答えとして提出しました。 –

答えて

0

私はそれを理解しました。 transporterオブジェクトのヘッダに'Content-type': 'text/html; charset=UTF-8'を設定しました。その行を削除すると問題が解決しました。

関連する問題