После запуска сервера ниже.Я использую почтальон, чтобы разместить тело, но почему это не работает? - PullRequest
1 голос
/ 27 июня 2019

Я использую почтальон для отправки тела {"name" : "test"} на сервере ниже, но почему это не работает?res.send невозможно отправить (course) назад.

Сервер работает нормально, так как я могу получать запросы с тем же URL,

const express = require("express");
const app = express();

app.use(express.json());

const courses = [
  { id: 1, name: "course1" },
  { id: 2, name: "course2" },
  { id: 3, name: "course3" }
];

app.get("/api/courses", (req, res) => {
res.send(courses);
});

app.post("api/courses", (req, res) => {
  const course = {
    id: courses.length + 1,
    name: req.body.name
  };
  courses.push(course);
  res.send(course);
});

1 Ответ

0 голосов
/ 27 июня 2019

Я прочитал ваш код и добавил следующее:

  • В определении вашей конечной точки вы поместили api/courses, и правильная вещь будет /api/courses с косой чертой (/) в начале.
  • Последний блок запускает сервер на порт «3000» и печатает комментарий журнала на консоль.

const express = require('express');
const app = express();

app.use(express.json());

const courses = [
    { id: 1, name: 'course1' },
    { id: 2, name: 'course2' },
    { id: 3, name: 'course3' }
];

app.get('/api/courses', (req, res) => {
    res.send(courses);
});

app.post('/api/courses', (req, res) => {
    const course = {
        id: courses.length + 1,
        name: req.body.name
    };
    courses.push(course);
    res.send(course);
});

app.listen(3000, function () {
    console.log('Example app listening on port 3000!');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...