| Current Path : /var/www/recommendations/www/ |
| Current File : /var/www/recommendations/www/20230619_index.js |
const express = require('express');
const bodyParser = require('body-parser');
const mysql = require('mysql');
// Configurazione del database MySQL
const connection = mysql.createConnection({
host: '127.0.0.1',
user: 'recommendations',
password: 'recommendations',
database: 'node_recommendations',
charset: 'utf8mb4'
});
// Connessione al database MySQL
connection.connect((err) => {
if (err) {
console.error('Errore di connessione al database: ' + err.stack);
return;
}
console.log('Connesso al database MySQL con ID connessione ' + connection.threadId);
});
// Creazione dell'app Express
const app = express();
app.use(bodyParser.json());
// Middleware per verificare l'accesso ristretto
const checkAuth = (req, res, next) => {
// Esegui qui la logica per verificare l'accesso ristretto
// Ad esempio, verifica il token o i dati di autenticazione dell'utente
// Esempio di verifica del token
const token = req.headers.authorization;
if (token !== 'il_tuo_token_segreto') {
return res.status(401).json({ message: 'Accesso non autorizzato' });
}
// Se l'accesso è consentito, passa al prossimo middleware
next();
};
// Rotta per salvare i dati in una tabella del database MySQL
app.post('/api/dati', checkAuth, (req, res) => {
const dati = req.body;
console.dir(dati);
// Esegui la query per inserire i dati nella tabella del database
connection.query('INSERT INTO recommendations SET ?', dati, (error, results) => {
if (error) {
console.error('Errore durante l\'inserimento dei dati: ' + error.stack);
return res.status(500).json({ message: 'Errore del server' });
}
return res.status(201).json({ message: 'Dati salvati correttamente' });
});
});
// Avvio del server
const port = 3030;
app.listen(port, () => {
console.log('Server avviato sulla porta ' + port);
});