API scalabile node ed express  - nodeScalabile - RESTFul API con node.js ed express.js – Parte 3

RESTFul API con node.js ed express.js – Parte 3

Dopo la seconda parte dell’articolo, sono rimasto in debito della conclusione, che andrò a descrivere in questa terza parte.

In questa terza parte, introduciamo l’utilizzo delle classi nel routing delle chiamate.

Utilizzo delle classi nel routing

Nel callback delle funzioni di routing, sostituiamo la chiamata diretta con il riferimento al metodo della classe. Ma andiamo con ordine.

Partiamo creando all’interno del nostro progetto una sottocartella col nome della classe, al quale aggiungiamo il suffisso “Controllers”. Per esempio se vogliamo scrivere le funzioni che gestiscono la lista delle attività da fare (todo) procediamo così:

mkdir todosControllers
nano todosControllers/todos.js

Nel file scriviamo:

class TodosController {
     sayHello(req, res) {
        return res.status(200).send({
           success: 'true',
           message: 'Hello World!'
        });
      }
}
const todoController = new TodosController();
module.exports = todoController;

La classe TodosController presenta il metodo sayHello che restituisce il messaggio “Hello World!” Inoltre le ultime due righe permettono di attivare la classe ed esportare il modulo per poter essere utilizzato nel file del routing (o dovunque possa servire).

A questo punto nel file routes/index.js andiamo a sostituire nel routing il callback con la funzione della classe todosControllers, non prima però di aver importato la classe stessa nel file:

const todoController = require('../todosController/todos.js');

[..]

routing.get('/', todoController.sayHello);

Come si può vedere, la chiamate GET del routing risulta molto più pulita e semplice da leggere. Inoltre questo ci permette di scrivere metodi complessi all’interno delle classi.

Questo primo trittico di articoli, vuole essere un’introduzione alla scrittura delle API RESTFul. Vorrei arricchire la collezione di articoli sulle API RESTFul trattando argomenti come gli Swagger per la generazione automatica della documentazione e di un ambiente di test, la limitazione delle API e l’autenticazione, solo per citarne alcuni.

0 0 vote
Article Rating
Seguici e condividi su:
onpost_follow  - icon Follow en US - RESTFul API con node.js ed express.js – Parte 3
Tweet  - en US Tweet - RESTFul API con node.js ed express.js – Parte 3
- en US save - RESTFul API con node.js ed express.js – Parte 3
Share  - en US share - RESTFul API con node.js ed express.js – Parte 3
Subscribe
Notificami
guest
0 Commenti
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x