我试图通过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编码。它只是被解释为纯文本!
应用程序2成功发送具有相同服务和输入的消息。如您所见,这次邮件数据被解释为url编码,而mailgun API识别邮件参数。
有关应用程序1可能导致此问题的任何建议吗?
(我知道数据与屏幕截图不完全相同,但我想说明的问题是他们以不同的方式解释邮件数据)