Node.js: verificare le chiavi delle nostre API

In Node.js possiamo verificare le chiavi usate dalle nostre API.

Node.js di Gabriele Romanato

In Node.js possiamo verificare le chiavi usate dalle nostre API.

La soluzione è la seguente:


'use strict';

const mongoose = require('mongoose');
const express = require('express');
const app = express();

mongoose.Promise = Promise;
mongoose.connect('mongodb://localhost:27017/test');

const keys = require('./models/keys');

app.get('/api', async (req, res) => {
    // In produzione: aggiungere validazione sintattica della chiave
    try {
        let key = await keys.findOne({key: req.query.key});
        if(key) {
            // Processiamo la richiesta
        } else {
            res.json({
                status: 403,
                message: 'Unauthorized'
            })
        }
    } catch(err) {
        res.json({
            status: 500,
            message: 'Server error'
        })
    }
});

Quando si utilizzerà l'URL /api/?key=1234 la chiave API passata come parametro della query string verrà verificata in modo da bloccare accessi non autorizzati.

Commenti