Mailgun - POST主体不被解释为url编码

时间:2016-07-21 10:17:49

标签: http https http-post mailgun

我试图通过mailgun电子邮件服务发送电子邮件。我使用角度2.这就是我的服务:

  sendEmail(fromName, fromEmail, message) {
    var headers = new Headers();
    var recieverMail = "abc@123.se";//service@csc.kth.se"
    var subject = "error report submitted by interactive screen"
    headers.append("Authorization", "Basic "+btoa("MY_API_KEY"));
    headers.append("content-type", "application/x-www-form-urlencoded");
    var url = "https://api.mailgun.net/v3/mymailgun.mailgun.org/messages";
    var data = "from="+fromName+"&to=" +recieverMail+"&subject="+subject+"&text="+message;
    return this.http.post(url,data, {headers: headers});
  }

我有两个使用此服务的不同程序,它们都传递服务字符串,但服务只对其中一个服务失败。

Applcation 1收到一条错误消息,指出"来自"参数丢失,这是因为邮件数据由于某种原因未被解释为url编码。它只是被解释为纯文本!

enter image description here

应用程序2成功发送具有相同服务和输入的消息。如您所见,这次邮件数据被解释为url编码,而mailgun API识别邮件参数。

enter image description here

有关应用程序1可能导致此问题的任何建议吗?

(我知道数据与屏幕截图不完全相同,但我想说明的问题是他们以不同的方式解释邮件数据)

0 个答案:

没有答案