Inhaltsverzeichnis
nodejs-Plugin
Heim Web-Frontend Front-End-Fragen und Antworten Was sind die NodeJS-Plug-Ins?

Was sind die NodeJS-Plug-Ins?

Nov 23, 2021 pm 05:27 PM
nodejs 插件

Nodejs-Plugins umfassen: „node-xlsx“, nodemailer, „node-readbility“, connect, „express-session“, „basic-auth“, bcryptjs, puppeteer, nightmare usw.

Was sind die NodeJS-Plug-Ins?

Die Betriebsumgebung dieses Tutorials: Windows7-System, NodeJS-Version 12.19.0, DELL G3-Computer.

nodejs-Plugin

1. Node-xlsx liest und schreibt Excel

Excel-Import und -Export ist ein Problem, das in vielen Systemen auftritt, und NodeJS ist keine Ausnahme. Jetzt verwenden wir NodeJS Lesen und Schreiben von Excel-Dateien

Um das Lesen und Schreiben von Dateien zu realisieren, verwenden wir in NodeJS das Modul node-xlsx eines Drittanbieters. Dieses Modul unterstützt sowohl das Excel-Format 2003 (.xls) als auch das Excel-Format 2007. . Holen Sie sich die Excel-Datei

cnpm install node-xlsx --save
Nach dem Login kopieren

Der obige Code hat den Lesevorgang der Excel-Datei abgeschlossen. Zu diesem Zeitpunkt ist das, was wir lesen, ein Objekt, und die Informationen können in der Konsole angezeigt werden

Schreibvorgang in Excel

Jetzt zeigen wir, wie man die Informationen aus einer Tabelle in der Datenbank liest und auf dem lokalen Computer speichert. Der Code lautet wie folgt:

const xlsx=require('node-xlsx');const DBUtil=require('./utils/DBUtil.js');const fs=require('fs');const path=require('path');function readExcel(path){
  var excel=xlsx.parse(path);
  return excel;}var obj=readExcel(path.join(__dirname,"./files/studentinfo.xls"));console.log(obj[0].data);
Nach dem Login kopieren

Hier finden wir, dass das Schreiben in Excel etwas mühsamer ist, denn hier ist Wir müssen die in der Datenbank erhaltenen Ergebnisse neu kombinieren und Excel generieren

Denken

: Was wäre, wenn im Express-Framework die generierte Excel-Datei wie folgt aussieht, damit Benutzer sie herunterladen und lokal speichern können?

2. Das Versenden von E-Mails per Nodemailer

nodejs wird beispielsweise häufig zum Versenden von E-Mails an Benutzer verwendet Wenn wir diese Funktion zu diesem Zeitpunkt ausführen möchten, müssen wir ein Drittanbietermodul von Nodemailer verwenden. Die spezifischen Schritte sind wie folgt: Installieren Sie das entsprechende Modul

const excel=require('node-xlsx');const fs=require('fs');const path=require('path');const DBUtil=require('./utils/DBUtil.js');function writeExcel(){
  var conn=DBUtil.getConn();
  conn.query("select * from studentinfo",[],(err,result)=>{
    if(err){

    }
    else{
      var excelArr=[];
      var headerRow=[];
      for(var i in result[0]){
        headerRow.push(i);
      }
      excelArr.push(headerRow);
      for(var i=0;i<result.length;i++){
        var temp=[];
        for(var j=0;j<headerRow.length;j++){
          temp.push(result[i][headerRow[j]]);
        }
        excelArr.push(temp);
      }
      try {
        var buff=excel.build([{name:&#39;学生信息&#39;,data:excelArr}]);
        fs.writeFileSync(path.join(__dirname,"./files/01.xlsx"),buff);
        console.log("ok");
      } catch (error) {
        console.log(err);
      }
    }
  });
  conn.end();}writeExcel();
Nach dem Login kopieren

Importieren Sie das Modul. Vervollständigen Sie den Code

$ cnpm install nodemailer --asve
$ yarn add nodemailer
Nach dem Login kopieren
Senden Sie Informationen nach Erfolg
const nodemailer=require(&#39;nodemailer&#39;);var transport = nodemailer.createTransport({
  service:"qq",
  auth:{
    user:"365055754@qq.com",
    pass:"peshapwpokgvcahe"
  }});var options={
  from:"365055754@qq.com",
  to:"lovesnsfi@live.com",
  subject:"这是一封来自nodemailer发送的邮件信息",
  text:"这是一封来自nodemailer发送的邮件信息"+(new Date()).toLocaleString(),
  html:"<h2>这是一封来自<u>nodemail</u>的测试邮件···</h2>"};transport.sendMail(options,(err,info)=>{
  if(err){
    console.log(err);
  }
  else{
    console.log(info);
  }});
Nach dem Login kopieren
Solange das Programm zu diesem Zeitpunkt unsere Sendeanforderung an dieser Stelle abschließen kann, werden die oben genannten Informationen zurückgegeben. Wenn wir die oben genannten Informationen nicht sehen, benötigen wir sie Um den Fehler zu überprüfen, geben Sie an dieser Stelle Informationen

Erläuterung

: Bei der Konfiguration des sendenden Servers können wir einen Server eines Drittanbieters oder einen integrierten Server verwenden

Denkweise

: Wenn der gesendete Inhalt durch eine Vorlage ersetzt wird

{ accepted: [ 'lovesnsfi@live.com' ],
  rejected: [],
  envelopeTime: 221,
  messageTime: 830,
  messageSize: 801,
  response: '250 Ok: queued as ',
  envelope: { from: '365055754@qq.com', to: [ 'lovesnsfi@live.com' ] },
  messageId: '<2fbef9f1-1041-fd59-1111-0b987e8d81da@qq.com>' }
Nach dem Login kopieren

Der obige Code kapselt den Inhalt der zu sendenden E-Mail in ein Objekt und verwendet dann die Vorlagensyntax, um Zeichenfolgen zu verbinden.

Denken: Für den oben genannten E-Mail-Inhalt schreiben wir ihn in eine separate externe TXT-Datei und dann verwenden String Wie implementiert man diese Funktion durch Ersetzen des Objekts?

3. child_process

kann untergeordnete Prozesse erstellen und Shell-Skripte ausführen.

4. KnotenlesbarkeitEin Plug-in, das Website-Inhalte in einfache Inhalte umwandeln kann.

5. connect Tatsächlich verwendet Express auch dieses Plug-in, und Sie können mit connect auch Webprogramme schreiben.

6. Express-SitzungDies ist ein Plug-in, das Sitzungen verwendet. Der Standardwert ist ewig, was sich von 30 Minuten bei Tomcat unterscheidet, daher müssen Sie das Timeout selbst festlegen.

7. Das Basic-Auth-Plugin wird für die einfachste Authentifizierungsmethode verwendet und wird im Allgemeinen für API-Anfragen verwendet.

8. bcryptjs-Plug-in (während des bcrypt-Installationsprozesses wird immer ein Fehler gemeldet) wird verwendet, um die Hash-Verarbeitung mithilfe von Salting durchzuführen.

9. Sammlung von Reptilien: (1) Crawlen von statischen Seiten und API-Daten: request+cheerio/jsdom, das nach Erhalt von HTML-Daten Informationen anfordern kann Eine Parsing-Bibliothek eines Drittanbieters zum Parsen, wie z. B. cheerio, können Sie über die Verwendung von jsdom nachdenken, aber leider ist dies synchron und schließlich kein Browser.

(2) Crawlen dynamisch gerenderter Seiten

Puppenspieler: Mit dem Chromiun-Browser sind asynchrone Anforderungen sehr effizient und es werden viele APIs zum Betreiben des Browsers geöffnet, was sehr praktisch ist.

Albtraum

: Die API ist sehr bequem zu verwenden. Obwohl ich sie noch nie verwendet habe, habe ich das Gefühl, dass sie nicht so flexibel ist wie Puppeteer.

jsdom

: Die Synchronisierung hat mich dazu gebracht, die Nutzung aufzugeben. Dasselbe wie Selen.

10、moment.js

Dies ist eine leichtgewichtige Format-Parsing-Bibliothek. Wenn Sie die Format-Parsing-Funktion selbst schreiben, benötigen Sie mehrere Dutzend Zeilen Funktionscode.

Weitere Informationen zu Knoten finden Sie unter: nodejs-Tutorial! !

Das obige ist der detaillierte Inhalt vonWas sind die NodeJS-Plug-Ins?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1655
14
PHP-Tutorial
1252
29
C#-Tutorial
1226
24
Der Unterschied zwischen NodeJS und VueJS Der Unterschied zwischen NodeJS und VueJS Apr 21, 2024 am 04:17 AM

Node.js ist eine serverseitige JavaScript-Laufzeitumgebung, während Vue.js ein clientseitiges JavaScript-Framework zum Erstellen interaktiver Benutzeroberflächen ist. Node.js wird für die serverseitige Entwicklung verwendet, beispielsweise für die Entwicklung von Back-End-Service-APIs und die Datenverarbeitung, während Vue.js für die clientseitige Entwicklung verwendet wird, beispielsweise für Single-Page-Anwendungen und reaktionsfähige Benutzeroberflächen.

Ist NodeJS ein Backend-Framework? Ist NodeJS ein Backend-Framework? Apr 21, 2024 am 05:09 AM

Node.js kann als Backend-Framework verwendet werden, da es Funktionen wie hohe Leistung, Skalierbarkeit, plattformübergreifende Unterstützung, ein umfangreiches Ökosystem und einfache Entwicklung bietet.

So verbinden Sie NodeJS mit der MySQL-Datenbank So verbinden Sie NodeJS mit der MySQL-Datenbank Apr 21, 2024 am 06:13 AM

Um eine Verbindung zu einer MySQL-Datenbank herzustellen, müssen Sie die folgenden Schritte ausführen: Installieren Sie den MySQL2-Treiber. Verwenden Sie mysql2.createConnection(), um ein Verbindungsobjekt zu erstellen, das die Hostadresse, den Port, den Benutzernamen, das Passwort und den Datenbanknamen enthält. Verwenden Sie „connection.query()“, um Abfragen durchzuführen. Verwenden Sie abschließend Connection.end(), um die Verbindung zu beenden.

Was sind die globalen Variablen in NodeJS? Was sind die globalen Variablen in NodeJS? Apr 21, 2024 am 04:54 AM

Die folgenden globalen Variablen sind in Node.js vorhanden: Globales Objekt: global Kernmodul: Prozess, Konsole, erforderlich Laufzeitumgebungsvariablen: __dirname, __filename, __line, __column Konstanten: undefiniert, null, NaN, Infinity, -Infinity

Was ist der Unterschied zwischen den Dateien npm und npm.cmd im Installationsverzeichnis von nodejs? Was ist der Unterschied zwischen den Dateien npm und npm.cmd im Installationsverzeichnis von nodejs? Apr 21, 2024 am 05:18 AM

Es gibt zwei npm-bezogene Dateien im Node.js-Installationsverzeichnis: npm und npm.cmd. Die Unterschiede sind wie folgt: unterschiedliche Erweiterungen: npm ist eine ausführbare Datei und npm.cmd ist eine Befehlsfensterverknüpfung. Windows-Benutzer: npm.cmd kann über die Eingabeaufforderung verwendet werden, npm kann nur über die Befehlszeile ausgeführt werden. Kompatibilität: npm.cmd ist spezifisch für Windows-Systeme, npm ist plattformübergreifend verfügbar. Nutzungsempfehlungen: Windows-Benutzer verwenden npm.cmd, andere Betriebssysteme verwenden npm.

Gibt es einen großen Unterschied zwischen NodeJS und Java? Gibt es einen großen Unterschied zwischen NodeJS und Java? Apr 21, 2024 am 06:12 AM

Die Hauptunterschiede zwischen Node.js und Java sind Design und Funktionen: Ereignisgesteuert vs. Thread-gesteuert: Node.js ist ereignisgesteuert und Java ist Thread-gesteuert. Single-Threaded vs. Multi-Threaded: Node.js verwendet eine Single-Threaded-Ereignisschleife und Java verwendet eine Multithread-Architektur. Laufzeitumgebung: Node.js läuft auf der V8-JavaScript-Engine, während Java auf der JVM läuft. Syntax: Node.js verwendet JavaScript-Syntax, während Java Java-Syntax verwendet. Zweck: Node.js eignet sich für I/O-intensive Aufgaben, während Java für große Unternehmensanwendungen geeignet ist.

Ist NodeJS eine Back-End-Entwicklungssprache? Ist NodeJS eine Back-End-Entwicklungssprache? Apr 21, 2024 am 05:09 AM

Ja, Node.js ist eine Backend-Entwicklungssprache. Es wird für die Back-End-Entwicklung verwendet, einschließlich der Handhabung serverseitiger Geschäftslogik, der Verwaltung von Datenbankverbindungen und der Bereitstellung von APIs.

Können NodeJS Frontend schreiben? Können NodeJS Frontend schreiben? Apr 21, 2024 am 05:00 AM

Ja, Node.js kann für die Front-End-Entwicklung verwendet werden. Zu den Hauptvorteilen gehören hohe Leistung, ein umfangreiches Ökosystem und plattformübergreifende Kompatibilität. Zu berücksichtigende Faktoren sind die Lernkurve, die Toolunterstützung und die geringe Community-Größe.

See all articles