La requête SQL n'apparaît pas sur un itinéraire spécifique dans Node.js
P粉770375450
P粉770375450 2024-04-04 00:24:22
0
1
451

Je suis nouveau sur javascript et nodejs et j'ai une question

J'ai un code sur lequel je travaille dans une API simple mais j'ai du mal à comprendre pourquoi cela se produit

app.get('/api/list_all', (req, res) => {
    get_info(`SELECT * FROM users;`, function(result){
        res.json(result);
    });
});

J'ai cette route qui répertorie tous les utilisateurs de localhost mysql à l'écran. La connexion fonctionne bien mais lorsque j'entre dans l'itinéraire elle renvoie un écran vide avec "[]" (liste vide)

La console et la page html n'affichent aucune erreur

Mais quand je change uniquement le parcours de "list_all" sans la partie "api", tout se passe bien. Comme ça :

app.get('/list_all', (req, res) => {
    get_info(`SELECT * FROM users;`, function(result){
        res.json(result);
    });
});

Il me renvoie une réponse SQL.

La question est : pourquoi cela ne fonctionne-t-il pas lorsque je fournis une "API" sur l'itinéraire ?

Fonction "get_info" :

function get_info(sql_data, callback){

    con.getConnection((error, conn) => {
        if (error) { throw error; }
        conn.query(
            sql_data,
            (error, resultado) => {
                conn.release();
                if (error) { throw error; }
                return callback(resultado)
            }
        )
    })
}

Je souhaite que la route "api/list_all" renvoie normalement les résultats SQL pour tous les utilisateurs.

P粉770375450
P粉770375450

répondre à tous(1)
P粉038161873

Vous avez peut-être importé le mauvais code dans le fichier de votre serveur principal

Si le code affiché ci-dessus se trouve dans un fichier différent de votre fichier server, vous devez ajouter la ligne app.use('/api/list_all',imported_route) ; dans server.js et modifier le code en

app.get('/', (req, res) => {
    get_info(`SELECT * FROM users;`, function(result){
        res.json(result);
    });
   });

Voir la question précédente pour plus d'aide Le routage n'utilise pas les API Node.js et Express.js

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal