Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 离子型2+;邮枪附件_Angular_Typescript_Ionic2_Mailgun - Fatal编程技术网

Angular 离子型2+;邮枪附件

Angular 离子型2+;邮枪附件,angular,typescript,ionic2,mailgun,Angular,Typescript,Ionic2,Mailgun,我正试图发送一封带有图片作为附件的电子邮件。不幸的是,除了附件,一切都正常。我在论坛或其他问题以及API上四处寻找,但我就是想不出来 这是发送电子邮件的一段代码。它接收Base64图像字符串数组。图像显示在应用程序中使用相同的数组,因此我认为该部分应该是正确的 sendAtt(pictures: any[]){ var requestHeaders = new Headers(); requestHeaders.append("Authorization", "Basic " +

我正试图发送一封带有图片作为附件的电子邮件。不幸的是,除了附件,一切都正常。我在论坛或其他问题以及API上四处寻找,但我就是想不出来

这是发送电子邮件的一段代码。它接收Base64图像字符串数组。图像显示在应用程序中使用相同的数组,因此我认为该部分应该是正确的

sendAtt(pictures: any[]){
    var requestHeaders = new Headers();
    requestHeaders.append("Authorization", "Basic " + this.apiKey);
    requestHeaders.append("Content-Type", "application/x-www-form-urlencoded");
    this.http.request(new Request({
            method: RequestMethod.Post,
            url: "https://api.mailgun.net/v3/" + this.mailgunUrl + "/messages",
            body: "from="+this.sender+"&to=" + this.recipient + "&subject=" + this.subject + "&text=" + this.message +"&attachment="+pictures[0] ,
            headers: requestHeaders,
        }))
        .subscribe(success => {
            console.log("SUCCESS -> " + JSON.stringify(success));
        }, error => {
            console.log("ERROR -> " + JSON.stringify(error));
        });
}

mailgun的附件需要编码为多部分/表单数据

因此,Base64图像字符串无法工作,需要对其进行转换

dataURItoBlob(dataURI){
康斯特林,
模拟串;
if(dataURI.split(',')[0].indexOf('base64')!=-1){
byteString=atob(dataURI.split(',)[1]);
}否则{
byteString=decodeURI(dataURI.split(',')[1]);
}
mimestring=dataURI.split(',')[0]。split(':')[1]。split(';')[0];
常量内容=新数组();
for(var i=0;i}
post的最大大小是25MB,您的图像是否比这个小?邮枪日志怎么说?