如何修复快递中的路由器帖子

how to fix the router posts in express

它是一个 API,应该 post 并更新 posts ..我不知道代码中缺少什么

post男人一直告诉我他们不能 post 和 return 错误:

Posts.Js:

router.get('/', async (req, res) =>{
  try{
    const posts = await Post.find();
        res.json (posts);
  } catch (err) {
        res.json ({ message: err });
  }
});


//submit a posts

router.post('/', async (req, res) => {
   const post = new Post({
       title: req.body.title,
       description: req.body.description
 });
    try {
       const savedPost = await post.save();
         res.json(savedPost);
    } catch (err) {
         res.json ({ message: err});
 }

 });

路由器post没有错误

应用程序代码:

const express = require("express");
const app = express();
const mongoose = require ('mongoose');
const bodyParser = require ('body-parser');
const cors = require('cors');

require('dotenv/config');



 app.use(cors());
 app.use(bodyParser.json());


 const postsRoute= require ( './routes/posts');

 app.use('/posts', postsRoute);

我猜你没有在 app.js 文件中包含路由器。

检查路由器是否正确导出并包含在app.js

app.js

let postRouter = require('./path_to_router_dir/routerName');

app.use('/post', postRouter);

检查您是否这样做过。请随时在下面发表评论,以了解任何澄清或答案上下文的变化。

同时删除 post 末尾的“/”。 api 终点必须是 /post 而不是 /post/

你有出口路由器吗?

我认为你应该改用 let