Vor kurzem entwickle ich ein WeChat-Anwendungskonto-Applet. Die Hintergrunddatenschnittstelle des Applets erfordert eine sichere HTTPS-Anfrage, daher muss mein NodeJS-Server in der Lage sein, https-Unterstützung bereitzustellen.
Vorbereitungsbedingungen
Ein Server
SSL-Zertifikat, das Miniprogramm erfordert https-Protokoll
Serverhintergrund
Node.js
express
mongodb
pm2
Im Folgenden wird Tencent Cloud Host (Centos) als Beispiel genommen
Node.js installieren
yum install nodejs
Sie können auch nvm installieren und nvm verwenden, um die Nodejs-Version zu verwalten
Git installieren
yum install git
Mit der Remote-Codebasis verbinden
Nehmen Sie Github als Beispiel:
Konfigurieren Sie Benutzerinformationen
git config --global user.name youname git config --global user.email youemail
Generieren Sie den öffentlichen SSH-Schlüssel
ssh -keygen -t rsa -C youemail
Das standardmäßig generierte Verzeichnis ist /root/.ssh
Suchen Sie die Datei id_rsa.pub im Verzeichnis. Kopieren Sie den Inhalt darin und fügen Sie ihn in Ihr eigenes ein. SSH auf Github hinzufügen
Mongodb und Client-Shell installieren
yum install mongodb-server mongodb -y
Datenbankdatei erstellen Speicherverzeichnis
mkdir -p /data/mongodb mkdir -p /data/logs/mongodb
Starten Sie den Mongodb-Datenbankdienst
mongod --fork --dbpath /data/mongodb --logpath /data/logs/youlog.log
Hinweis:
Wenn Sie --auth nach dem Befehl hinzufügen, wann Beim Starten des Mongodb-Dienstes wird die Authentifizierung aktiviert.
Es wird empfohlen, die Authentifizierung zu aktivieren. Wenn Sie kein Meeting abhalten, werden Sie leicht gehackt.
--Port 12345 kann die Portnummer der Datenbank ändern, der Standardwert ist 27017.
--fork startet den Datenbankdienst als Daemon.
--dbpath /data/mongodb gibt das Verzeichnis an, in dem die Datenbankdateien gespeichert sind.
--logpath /data/logs/youlog.log gibt das Protokolldateiverzeichnis an.
Die Konfigurationsdatei von mongodb befindet sich standardmäßig in /etc/mongod.conf
启动客户端shell
mongo //Starten Sie die Mongodb-Client-Shell und stellen Sie eine Verbindung zur Testdatenbank her standardmäßig
Sie können Datenbankverbindungen wechseln und entsprechende Vorgänge in der Shell ausführen.
Nachdem der Cloud-Server den Datenbankdienst als Daemon gestartet hat, schließen Sie das Terminal und der Dienst wird nicht beendet. Es ist also nicht erforderlich, den Datenbankdienst das nächste Mal zu starten, sondern einfach eine direkte Verbindung herzustellen.
Schließen Sie den Datenbankdienst
mongod --shutdown (--dbpath /data/mongodb)
Wenn dbpath beim Start hinzugefügt wird und es sich nicht um das standardmäßige /data/db handelt, schließen Sie es Der Datenbankdienst dbpath sollte ebenfalls hinzugefügt werden.
https-Dienst erstellen
npm init //项目初始化
Express installieren
npm install express --save
Implementieren Sie einen einfachen https-Server
const https = require('https'); const fs = require('fs'); const express = require('express'); const app = express(); let key = fs.readFileSync('youssl.key'); let cert = fs.readFileSync('youssl.crt'); let options = { key : key, cert : cert }; const httpsServer = https.createServer(options,app); httpsServer.listen(443, () => { console.log('listening 443 port'); }); app.get('/',(req, res, next) => { console.log('someone request'); });
.key- und .cert-Dateien sind Ihre SSL-Zertifizierungsdateien. Am Beispiel von Tencent Cloud Host können Sie ein kostenloses 1-Jahres-SSL-Zertifikat erhalten.
Verwenden Sie Mongoose, um die Datenbank zu betreiben
npm install mongoose --save const mongoose = require('mongoose'); mongoose.connect('mongodb://127.0.0.1/dbname'); //连接数据库 const connection = mongoose.connection; connection.once('open', (err) => { if(err){ console.log('Database connection failure'); }else{ console.log('Database opened'); } }); const Schema = mongoose.Schema; const YourSchema = new Schema({ name : String, age : Number, }); const yourModel = mongoose.model('yourtable', YourSchema); //在数据库中对应的表为yourtables let yourDoc = new yourModel({ name : 'yourname', age : 18, });
Beachten Sie, dass Sie bei Verwendung von Mongoose ein authentifiziertes Konto hinzufügen müssen, wenn Sie beim Starten des Mongodb-Datenbankdienstes --auth hinzufügen Stellen Sie eine Verbindung zur Datenbank her
mongoose.connect('mongodb://youraccount:pwd@127.0.0.1/dbname');
Korrespondenz zwischen Mongodb und relationaler Datenbank
Schema entspricht der Struktur der Tabelle. Es kann die Feldtypen des Dokuments vordefinieren und kann keine Datenbankoperationen ausführen. Das Modell kann eine Reihe von Datenbankoperationen ausführen, die Tabellen entsprechen. Eine Instanz von Model entspricht einer Zeile der Tabelle.
PM2 verwenden
PM2 installieren
npm install -g pm2
Anwendung starten
pm2 start app.js
Das Obige habe ich für Sie zusammengestellt. Ich hoffe, es wird Ihnen in Zukunft hilfreich sein.
Verwandte Artikel:
So kompilieren, verpacken und anzeigen Sie Indexdateien in Vue
So verwenden Sie die Jade-Vorlage in Vue
Vorlage an Komponente in Angular übergeben
Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Miniprogramm-Hintergrunddienst in Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!