我是 javascript 和 nodejs 新手,我有一个问题
我有一个代码,我正在一个简单的 API 中工作,但我很难理解为什么会发生这种情况
app.get('/api/list_all', (req, res) => {
get_info(`SELECT * FROM users;`, function(result){
res.json(result);
});
});
我有这条路线可以在屏幕上列出本地主机 mysql 的所有用户。连接正常,但当我输入路线时,返回一个带有“[]”(空列表)的空白屏幕
控制台和html页面没有显示任何错误
但是当我只更改“list_all”的路线而没有“api”部分时,一切顺利。像这样:
app.get('/list_all', (req, res) => {
get_info(`SELECT * FROM users;`, function(result){
res.json(result);
});
});
它向我返回 SQL 响应。
问题是:为什么当我在路线上提供“api”时不起作用?
函数“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)
}
)
})
}
我希望路由“api/list_all”能够正常返回所有用户的 SQL 结果。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
您可能将错误的代码导入到主服务器文件中
如果上面显示的代码与您的 server 文件位于不同的文件中,您应该在 server.js 中添加行
app.use('/api/list_all',imported_route) ;然后将代码更改为app.get('/', (req, res) => { get_info(`SELECT * FROM users;`, function(result){ res.json(result); }); });有关更多帮助,请参阅上一个问题路由不使用 Node.js 和 Express.js API