Creare e eseguire un progetto Express.js
Cos'è Express.js?
Express.js è un framework web rapido, open-source e minimalista basato su Node.js. Offre una serie di potenti funzionalità per costruire applicazioni web a pagina singola, multipagina e ibride. Express.js è uno dei framework più popolari nell'ecosistema Node.js, amato dagli sviluppatori per il suo design semplice e flessibile.
Principali caratteristiche e vantaggi di Express.js
- Semplice e flessibile: Express.js offre un'API semplice e un meccanismo middleware flessibile, rendendo lo sviluppo di applicazioni web molto efficiente.
- Middleware: Supporta vari middleware per gestire facilmente richieste e risposte.
- Routing: Potenti funzionalità di routing per gestire le richieste in base a diversi metodi HTTP e percorsi URL.
- Alta integrabilità: Si integra perfettamente con vari motori di template, database e altri moduli di Node.js.
- Comunità ed ecosistema: Ha una vasta comunità e supporto per middleware e plugin di terze parti.
Utilizzando Express.js, gli sviluppatori possono costruire rapidamente applicazioni web ad alte prestazioni e API.
Creare ed eseguire un progetto Express.js con ServBay
In questo articolo, useremo l'ambiente Node.js fornito da ServBay per creare e eseguire un progetto Express.js. Utilizzeremo la funzionalità "host" di ServBay per impostare un server web e realizzeremo l'accesso al progetto tramite proxy inverso.
Creare un progetto Express.js
Inizializzare il progetto
Prima di tutto, assicurati di aver installato l'ambiente Node.js fornito da ServBay. Poi, usa il seguente comando per inizializzare un nuovo progetto Express.js:
bashcd /Applications/ServBay/www npx express-generator servbay-express-app
1
2Installare le dipendenze
Entra nella directory del progetto e installa le dipendenze:
bashcd servbay-express-app npm install
1
2
Modificare l'output del progetto Express.js
Modificare il file
routes/index.js
Apri il file
routes/index.js
e modifica il contenuto per far visualizzare "Hello ServBay!":javascriptvar express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.send('Hello ServBay!'); }); module.exports = router;
1
2
3
4
5
6
7
8
9
Entrare in modalità sviluppo
Eseguire il server di sviluppo
Avvia il server di sviluppo e specifica la porta (es: 8585):
bashPORT=8585 DEBUG=servbay-express-app:* npm start
1Questo avvierà un server di sviluppo locale sulla porta 8585.
Configurare il proxy inverso dell'host ServBay
Utilizza la funzionalità "host" di ServBay per accedere al server di sviluppo tramite proxy inverso. Nelle impostazioni "host" di ServBay, aggiungi un nuovo proxy inverso:
- Nome:
My first Express.js dev site
- Dominio:
servbay-express-test.dev
- Tipo di host:
Proxy inverso
- IP:
127.0.0.1
- Porta:
8585
Per i dettagli sui passaggi di configurazione, consulta aggiungere un sito web di sviluppo Nodejs.
- Nome:
Accedere alla modalità sviluppo
Apri il browser e visita
https://servbay-express-test.dev
per visualizzare il progetto in tempo reale. Poiché ServBay supporta domini personalizzati e certificati SSL gratuiti, otterrai un livello di sicurezza superiore.
Distribuire la versione di produzione
Preparare l'ambiente di produzione
Assicurati che il tuo progetto funzioni correttamente nell'ambiente di produzione. Solitamente i progetti Express.js non necessitano di passaggi di build specifici, ma potresti dover impostare alcune variabili d'ambiente o eseguire altre configurazioni.
Eseguire il server di produzione
Avvia il server di produzione e specifica la porta (es: 8586):
bashPORT=8586 NODE_ENV=production npm start
1Configurare il proxy inverso dell'host ServBay
Utilizza la funzionalità "host" di ServBay per accedere al server di produzione tramite proxy inverso. Nelle impostazioni "host" di ServBay, aggiungi un nuovo proxy inverso:
- Nome:
My first Express.js production site
- Dominio:
servbay-express-test.prod
- Tipo di host:
Proxy inverso
- IP:
127.0.0.1
- Porta:
8586
- Nome:
Accedere alla modalità produzione
Apri il browser e visita
https://servbay-express-test.prod
per visualizzare la versione di produzione. Con i domini personalizzati e i certificati SSL gratuiti di ServBay, il tuo sito web avrà un livello di sicurezza e affidabilità superiore.
Connessione al database
ServBay supporta database come Redis, MariaDB, PostgreSQL e MongoDB. Di seguito è riportato come connettersi a questi database.
Connettersi a MongoDB
Installa
mongoose
:bashnpm install mongoose
1Poi, nel progetto, importa e connettiti:
javascriptvar mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/servbay-express-app', { useNewUrlParser: true, useUnifiedTopology: true });
1
2
3Connettersi a Redis
Installa
redis
:bashnpm install redis
1Poi, nel progetto, importa e connettiti:
javascriptvar redis = require('redis'); var client = redis.createClient(); client.on('error', function (err) { console.log('Error ' + err); });
1
2
3
4
5
6Connettersi a MariaDB
Installa
mariadb
:bashnpm install mariadb
1Poi, nel progetto, importa e connettiti:
javascriptvar mariadb = require('mariadb'); var pool = mariadb.createPool({ host: 'localhost', user: 'root', password: 'password', database: 'servbay_express_app' }); pool.getConnection() .then(conn => { console.log("Connected to MariaDB"); conn.release(); //release to pool }) .catch(err => { console.log("Not connected due to error: " + err); });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16Connettersi a PostgreSQL
Installa
pg
:bashnpm install pg
1Poi, nel progetto, importa e connettiti:
javascriptvar { Pool } = require('pg'); var pool = new Pool({ user: 'user', host: 'localhost', database: 'servbay_express_app', password: 'password', port: 5432, }); pool.connect((err, client, done) => { if (err) throw err; console.log('Connected to PostgreSQL'); done(); });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Seguendo questi passaggi, hai creato ed eseguito con successo un progetto Express.js, utilizzando le funzionalità di ServBay per gestire e accedere al tuo progetto, oltre a connetterti a vari database.