gpt4 book ai didi

node.js - 无法获取在 Nodejs 中工作的路由

转载 作者:太空宇宙 更新时间:2023-11-04 00:07:03 26 4
gpt4 key购买 nike

运行node server.js命令后,server.js代码是这样的我能够访问http://localhost:8080/并正确获取json

{"error":false,"data":[{"id":1,"task":"Find bugs","status":1,"created_at":"2016-04-10T18:20:40.000Z"},{"id":2,"task":"Review code","status":1,"created_at":"2016-04-10T18:20:40.000Z"},{"id":3,"task":"Fix bugs","status":1,"created_at":"2016-04-10T18:20:40.000Z"},{"id":4,"task":"Refactor Code","status":1,"created_at":"2016-04-10T18:20:40.000Z"},{"id":5,"task":"Push to prod","status":1,"created_at":"2016-04-10T18:20:50.000Z"}],"message":"Todos list."}

但是当我尝试访问http://localhost:8080/secret时我收到“无法获取/ secret ”错误。我的 server.js 文件是这个

const express = require('express');
const app = express();
const mysql = require('mysql');
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended:true
}));
const mc = mysql.createConnection({
host:'localhost',
user : 'root',
password : '',
database : 'task'
});
mc.connect();

// Retrieve all todos

//default route
app.all('/',function(req,res,next){

mc.query('SELECT * FROM tasks', function (error, results, fields) {
if (error) throw error;
return res.send({ error: false, data: results, message: 'Todos list.' });
next()
});
});
app.use('/secret', function (req, res, next) {
console.log('Accessing the secret section ...')
next() // pass control to the next handler
})
app.listen(8080,function(){

console.log('Node app is running on port 8080');
});

任何帮助将不胜感激

最佳答案

您现在的实现似乎不完整。您应该查看express.Router documentation (查看页面最底部)。

您尝试使用的 use 方法应至少包含 router.get('/', function (req, res) {} ); 实现。或者,您可以将 use 替换为 getall 并且它会起作用。

祝你好运!

关于node.js - 无法获取在 Nodejs 中工作的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51785494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com