Ich versuche herauszufinden, wie Wert von xml
Datei erhalten und diesen Wert zur Konsole ausgeben.nicht Ausgabe von Funktion
const path = require('path');
const fs = require('fs');
const parseString = require('xml2js').parseString;
const sourceFile = path.join(__dirname, 'books.xml');
const document = (sourceFile, callback) => {
fs.readFile(sourceFile, { encoding: 'utf-8' }, function (err, data) {
if (err) {
return err;
}
parseString(data, (err, result) => {
result.catalog.book.forEach(users => {
callback(users.email);
});
});
});
};
console.log(document(sourceFile, data => data));
Die XML selbst ist sehr einfach:
<catalog>
<book id="bk101">
<author>Gambardella, Matthew</author>
<title>XML Developer's Guide</title>
<email>[email protected]</email>
</book>
</catalog>
Aber was ich von der Funktion bin immer ist undefined
. Warum passiert das?
Update: Ich versuche, zurückgegebene Wert senden
transporter.sendMail({ from: '[email protected]', to: document(sourceFile, (data) => data), subject: 'Message', text: 'I hope this message gets sent!', }, (err, info) => { if (err) { console.log('error!'); console.log(err.message); } else { console.log('sucess!'); console.log(info.messageId); console.log(info.response); }
nodemailer aber ich erhalte eine Fehlermeldung: ' ' ' Fehlende erforderlich Header' To
Ich versuche, zurückgegebene Wert senden nodemailer 'transporter.sendMail ({ aus: '[email protected]', zu: Dokument (source, (Daten) => Daten), Betreff: 'Nachricht', Text: ' Ich hoffe, diese Nachricht wird gesendet! ', }, (err, info) => { if (err) { console.log (' error! '); console.log (err.message); } else { console.log ('Erfolg!'); Konsole.log (info.messageId); console.log (info.response); } ' aber das ist der Fehler, den ich bin interting: 'fehlenden Header' zu '.' –
@ KarolisArbačiauskas, bitte fügen Sie ein Update zu der Frage für das gleiche, wird meine Antwort zu aktualisieren. Also Frage Antwort bleibt synchron. –
@ KarolisArbačiauskas Ich habe Update-Patch hinzugefügt, um zu antworten. –