通过Mailgun从离子2移动应用程序发送带附件的电子邮件

时间:2017-01-18 12:40:22

标签: angular ionic2 mailgun

我正在尝试通过Android设备上的Ionic 2应用程序通过mailgun发送日志文件。该文件是纯文本csv文件,我之前在应用程序中使用File.writeFile命令成功创建了该文件:

File.writeFile(cordova.file.externalRootDirectory, "data.csv", "...")

我可以通过Mailgun发送电子邮件,所以我知道基本配置设置正确。电子邮件被发送(包括主题和文本),但没有附件。我的最新方法是:

let formData = new FormData();
    formData.append("from", "someone@gmail.com");
    formData.append("to", "someone@gmail.com");
    formData.append("subject", "test");
    formData.append("text", "plain email works");
    formData.append("attachment", cordova.file.externalRootDirectory + 'data.csv');
this.http.post("https://api:key-MYAPIKEY@api.mailgun.net/v3/MYDOMAIN/messages", formData)
  .map(result => result.json())
  .do(result => console.log("RESULT", JSON.stringify(result)))
  .subscribe(result => {
    console.log("SENT!");
  }, error => {
    console.log(error);
  });

我还尝试明确说明Content-Type:

let headers = new Headers(
      {
        "Content-Type": "multipart/form-data",
        "Authorization": "Basic " + MYAPIKEY //(base64 encoded)
      }
    );
let options = new RequestOptions({headers: headers});
this.http.post("https://api.mailgun.net/v3/"+this.mailgunUrl+"/messages", formData, options)

我没有传递路径和文件名,而是尝试使用File.getFile,但没有取得多大成功。如果有人能提供帮助,那就太好了。非常感谢!

0 个答案:

没有答案