gpt4 book ai didi

javascript - Node js( Mongoose )没有响应

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

我从 React 发送请求:

export const loadItems = () => async dispatch => {
await axios
.get("http://localhost:8000/api/users")
.then(response => {
console.log(response.users);
dispatch(dataLoaded(response.users));
})
.catch(err => {
dispatch(dataLoadFailed(err));
});
};

但是没有响应,并且服务器不接受请求,这是我的服务器应用程序代码:

服务器.js

// a lot of requires
const todoRoutes = require("./routes/serverRoute");
const url = "mongodb://localhost:27017/taskManager";
const app = express();

mongoose.Promise = global.Promise;
mongoose.connect(
url,
{ useNewUrlParser: true },
function(err) {
if (err) {
console.log(err);
} else console.log("Database connected");
}
);

app.get("/", (req, res) => {
res.sendFile(path.join(__dirname, "/public/index.html"));
});

// cors allow
app.use("/api", todoRoutes);

app.listen(8000, () => {
console.log("API started");
});

这是我使用的 Controller ,它与Schema和数据库配合良好,我检查了 Node 到控制台的输出,users已定义并包含数据

const mongoose = require("mongoose");
const User = require("../models/UserModel");

module.exports = {
getUsers(req, res) {
User.find().exec((err, users) => {
if (err) {
console.log(err);
return res.send({ err });
} else {
console.log(users);
return res.send({ users });
}
});
}
};

这是我的路由器:

module.exports = router => {
router.get('/users', userController.getUsers);
}

最佳答案

好吧,我自己搞定了。问题出在这里:

router.get('/users', userController.getUsers);

应该是这样的:

router.get('/users', userController.getUsers());

关于javascript - Node js( Mongoose )没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51455478/

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