【发布时间】:2021-09-09 15:21:48
【问题描述】:
index.js
const express = require("express");
const app = express();
const cors = require("cors");
const db = require("./models");
app.use(express.json());
app.use(cors());
//Router
const userrouter = require("./routes/user");
app.use("./user", userrouter);
db.sequelize.sync().then(() => {
app.listen(3001, () => {
console.log("Hello I am server.");
});
});
user.js
const express = require("express");
const router = express.Router();
const { Users } = require("../models");
router.get("/", async (req, res) => {
const noOfUsers = await Users.fetchAll();
res.json(noOfUsers);
});
router.post("/", async (req, res) => {
const post = req.body;
await Users.create(post);
res.json(post);
});
module.exports = router;
users.js
module.exports = (sequelize,DataTypes)=>{
const user = sequelize.define("Users",{
name:{
type:DataTypes.STRING,
allowNull: false,
},
description:{
type: DataTypes.STRING,
allowNull: true,
},
phone:{
type: DataTypes.INTEGER,
allowNull: false,
},
});
return user;
};
我在模型文件夹中有 users.js。为什么我在运行服务器时无法 GET/?我正在使用node.js,我还安装了cors、mysql2、sequelize和express。
【问题讨论】:
-
尝试使用
"../models/user" -
另外
app.use("./user", userrouter);应该是app.use("/user", userrouter);没有.