来自流的 mailgun 附件。如何应用文件名
mailgun attachment from stream. How to apply filename
我正在使用节点 html-pdf 创建一个 PDF(包装它因为我喜欢 promises)
const createPDF = (html, options) => new Promise(((resolve, reject) => {
pdf.create(html, options).toBuffer((err, buffer) => {
if (err !== null) {
reject(err);
}
else {
resolve(buffer);
}
});
}));
const PDF = await createPDF(html, options);
PDF 是一个缓冲区 - 我可以将此 'as is' 附加到 mailgun,它会毫无问题地发送文件。
在节点 mailgun-js 中,我传递了以下内容:
const data = {
from,
to,
subject,
text,
attachment: PDF
};
我查看了所有文档 - 但看不到在哪里可以为附件添加文件名。收到的附件默认为 "file"... 没有 PDF 扩展名。我找到了一个 PHP 示例,其中添加了文件名...我尝试了相同的参数,但它不适用于节点库。
是否可以添加文件名?
谢谢
好的...所以您不会在 mailguns 网站上找到这个...这不在他们的文档或示例中。我偶然发现了他们图书馆的 npm 文档(我应该先去那里)。为了将文件名附加到流中,您必须使用以下内容创建 mailgun.attachment 对象:
const attch = new mailgun.Attachment({data: file, filename: filename});
file 可以是流、文件路径或缓冲区。文件名是你想给它起的名字...
然后你附加这个对象..
我正在使用节点 html-pdf 创建一个 PDF(包装它因为我喜欢 promises)
const createPDF = (html, options) => new Promise(((resolve, reject) => {
pdf.create(html, options).toBuffer((err, buffer) => {
if (err !== null) {
reject(err);
}
else {
resolve(buffer);
}
});
}));
const PDF = await createPDF(html, options);
PDF 是一个缓冲区 - 我可以将此 'as is' 附加到 mailgun,它会毫无问题地发送文件。
在节点 mailgun-js 中,我传递了以下内容:
const data = {
from,
to,
subject,
text,
attachment: PDF
};
我查看了所有文档 - 但看不到在哪里可以为附件添加文件名。收到的附件默认为 "file"... 没有 PDF 扩展名。我找到了一个 PHP 示例,其中添加了文件名...我尝试了相同的参数,但它不适用于节点库。
是否可以添加文件名?
谢谢
好的...所以您不会在 mailguns 网站上找到这个...这不在他们的文档或示例中。我偶然发现了他们图书馆的 npm 文档(我应该先去那里)。为了将文件名附加到流中,您必须使用以下内容创建 mailgun.attachment 对象:
const attch = new mailgun.Attachment({data: file, filename: filename});
file 可以是流、文件路径或缓冲区。文件名是你想给它起的名字...
然后你附加这个对象..