Как отправить Excel в node js без на сервере - PullRequest
0 голосов
/ 22 марта 2020

Я хотел отправить лист Excel, созданный по следующему коду по почте, без сохранения файла на сервере

async function generateExcel(){
 const Excel = require('exceljs');
    const workbook = new Excel.Workbook();
    const worksheet = workbook.addWorksheet("My Sheet");
    var tempfile = require("tempfile");

    worksheet.columns = [
        { header: 'Id', key: 'id', width: 10 },
        { header: 'Name', key: 'name', width: 32 },
        { header: 'D.O.B.', key: 'dob', width: 15, }
    ];

    await worksheet.addRow({ id: 1, name: 'John Doe', dob: new Date(1970, 1, 1) });
    await worksheet.addRow({ id: 2, name: 'Jane Doe', dob: new Date(1965, 1, 7) });

    return workbook;
}

Я использую следующий код для отправки почты в node js

let mailOption = {
        from: '"Abc AB" <abc@abc1.com',
        to: 'abc@abc.com',
        subject: 'Testing mail sender',
        text: 'Success',
        attachments: [
            {
                filename: 'test.xlsx',
                content: worksheet 
 // it's giving me error it works fine if i save workbook in 
//server and send mail attachment like path :'filepath'
            }]
    };
    await transporter.sendMail(mailOption)
        .then(function (response) {
            console.log("Email sent");
        }).catch(function (error) {
            console.log("Error Occured", error)
        });

кто-нибудь, пожалуйста, помогите мне.

...