как исправить сообщения роутера в экспрессе - PullRequest
0 голосов
/ 13 июня 2019

это API, который должен публиковать и обновлять сообщения .. Я не могу понять, чего не хватает в коде

Почтальон постоянно говорит мне, что они не могут публиковать и возвращать ошибку:

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});
 }

 });

сообщение маршрутизатора без ошибок

Приложение js:

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);

Ответы [ 2 ]

1 голос
/ 13 июня 2019

У вас есть экспортируемый роутер?

Я думаю, вы должны использовать let.

1 голос
/ 13 июня 2019

Полагаю, вы не включили маршрутизатор в файл app.js.

Проверьте, правильно ли экспортирован маршрутизатор и включен ли он в app.js

app.js

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

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

Проверьте, сделали ли вы это.Пожалуйста, не стесняйтесь комментировать ниже для каких-либо разъяснений или изменения в контексте ответа.

Также удалите '/' из конца сообщения.Конечная точка API должна быть /post, а не /post/

...