Ich erhalte einen Syntaxfehler in mail.js, wenn ich den sendgrid-Beispielcode kopiert und versucht habe, ihn auf meinem Server auszuführen
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);
const msg = {
to: '[email protected]',
from: '[email protected]',
subject: 'Sending with SendGrid is Fun',
text: 'and easy to do anywhere, even with Node.js',
html: '<strong>and easy to do anywhere, even with Node.js</strong>',
};
sgMail.send(msg);
Letzter Schritt:
Führen Sie den Code aus
# node sendgrid.js
/root/scripts/node_modules/@sendgrid/mail/src/mail.js:6
const {
^
SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/root/scripts/sendgrid.js:1:78)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
# npm list |grep sendgrid
├─┬ @sendgrid/[email protected]
│ ├─┬ @sendgrid/[email protected]
│ │ ├── @sendgrid/[email protected] deduped
│ └─┬ @sendgrid/[email protected]
├─┬ [email protected]
│ └── [email protected]
npm ERR! extraneous: [email protected] /root/scripts/node_modules/jsprim/node_modules/assert-plus
npm ERR! extraneous: [email protected] /root/scripts/node_modules/verror/node_modules/assert-plus
npm ERR! extraneous: [email protected] /root/scripts/node_modules/dashdash/node_modules/assert-plus
npm ERR! extraneous: [email protected] /root/scripts/node_modules/getpass/node_modules/assert-plus
npm ERR! extraneous: [email protected] /root/scripts/node_modules/sshpk/node_modules/assert-plus
# npm -v
5.3.0
# node -v
v4.8.4
# echo $SENDGRID_API_KEY
SG.jyr8dVjFTBO4MayuTAS_zA.7a9Qg_XXXXXX
Hallo @kiranshashiny ,
Ich glaube, dies funktioniert bei Ihnen nicht, da v6 dieses SDK Node v4 nicht unterstützt.
Haben Sie Zugriff auf eine Maschine, die Node v6 oder höher verwendet?
Mit besten Empfehlungen,
Elmer
Dies ist richtig, der Fehler tritt bei einer Destrukturierungsanweisung auf, die in Node 4 nicht unterstützt wird.
Ich habe auf Knoten 8.x aktualisiert und es funktioniert.
Schließen des Problems als Fix war ein Upgrade.
Hilfreichster Kommentar
Hallo @kiranshashiny ,
Ich glaube, dies funktioniert bei Ihnen nicht, da v6 dieses SDK Node v4 nicht unterstützt.
Haben Sie Zugriff auf eine Maschine, die Node v6 oder höher verwendet?
Mit besten Empfehlungen,
Elmer