0

basically when i change "http://localhost:5000/api/users" to "http://localhost:5000/api/posts" in Create Request its giving me error if i leave it as it is which is "http://localhost:5000/api/users" if functions properly but for some damn reason postman is giving me this error which is shown in the picture and wont tell me whats causing it. anybody got any anwer? Error is described here

Cannot POST /api/posts

post.model.js

"

const {model, Schema } = require(`mongoose`)


const postSchema = new Schema (
    {
      user_id: {
        type: Schema.Types.ObjectId,
        ref: `User`,
        required:true
      },
  
      title: {
        type: String,
        required: true
    },
      
      body: {
        type: String,
        required: true
      }
    },
    {timestamps: true, versionKey: false}
  )


  module.exports = model('Post', postSchema);

"

post.controller.js

"

const Post = require(`../models/post.model`)
// @desc          Get todos
// @route         Get /api/todos
// @acsses        Public

exports.getAll = async (request, response)=>  {
    const posts = await Post.find();
    response.status(200).json({ sucsses: true, posts: posts})

}
// @desc          Get todo
// @route         GET /api/todo/:id
// @acsses        Public
exports.getOne = async (request, response)=> {
    const post = await Post.findById({ _id: request.params.id});

    response.status(200).json({ sucsses: true, post: post})
}
// @desc          Create todo
// @route         POST /api/todo
// @acsses        Public
exports.create = async (request, response)=> {
    const post = await Post.create(request.body);

    response.status(200).json({ sucsses: true, post: post})
} 
// @desc          Update todos
// @route         Get /api/todos/:id
// @acsses        Public
exports.updateOne = async (request, response)=> {
        const post = await Post.findByIdAndUpdate(request.params.id, request.body, {new : true, runValidators: true})


    response.status(200).json({ sucsses: true, post: post})
}

exports.deleteOne = async (request, response)=> {
    const post = await Post.findByIdAndDelete(request.params.id)
    response.status(200).json({ sucsses: true, post: post.id})
}

post.routes.js

"

const { Router } =require("express");
const { create, deleteOne, getAll, getOne, updateOne } = require("../controller/post.controller");


const router = Router()

router.route("/")
      .get(getAll)
      .post(create)
     



      router.route("/:id")
      .get(getOne)
      .put(updateOne)
      .delete(deleteOne)
      



module.exports = router;

server.js

"

const express = require("express")
const chalk = require("chalk")
const connectDatabase = require(`./api/config/connect.database`)

//   =========== Aplication Routes =====

const user_routes = require("./api/routes/user.routes")
const todo_routes = require("./api/routes/todo.routes")
const post_routes = require("./api/routes/post.routes")
const comment_routes = require("./api/routes/comment.routes")
const album_routes = require("./api/routes/album.routes")
const photo_routes = require("./api/routes/photo.routes")


const app = express();

// Incoming Request body parser?======

app.use(express.json())
app.use(express.urlencoded({ extended: true}))


connectDatabase();

app.use(`/api/users`, user_routes)
app.use(`/api/todos`, todo_routes)
app.use(`/api/post`,  post_routes)
app.use(`/api/comoment`, comment_routes)
app.use(`/api/album`,  album_routes)
app.use(`/api/photo`,  photo_routes)



const PORT = 5000
const SERVER_MODE = "development"


app.listen(PORT, ()=> {
    console.log(chalk.bold.yellow(`Server running in ${SERVER_MODE} mode on port ${PORT}`));
})


connect.database.js

"

const  mongoose = require("mongoose")
const  chalk = require(`chalk`)

const connectDatabase = async ()=> {
      const connect = await mongoose.connect("mongodb+srv://xynlep:123@project.41nkj.mongodb.net/members-api-reactional")


      console.log(chalk.bold.cyan(`Mongo Connected: ${connect.connection.host}`))

}

module.exports = connectDatabase;



i tryed checking code if thers some mistake in it but everythings perfectly fine not 100% sure tho but since it doenst give me reason why it cant send create request i really couldn't try anything else but google

Gio
  • 11
  • 1

0 Answers0