Почему request.body пуст? - PullRequest
       5

Почему request.body пуст?

0 голосов
/ 01 сентября 2018

Я создавал простое приложение для ведения блогов, используя стек Mean, и мне кажется, что мне трудно, request.body всегда пуст, хотя я отправляю данные, вот код, и запрос всегда находится на вкладке сети Chrome, пока не выдаст Err_connction_refused или что-то в этом роде, и обратите внимание, что я передаю данные формы в службу, где проблема лежит

Служба регистрации

import { Injectable } from '@angular/core';
import {Http, Headers} from '@angular/http';
import { map } from 'rxjs/operators';

@Injectable({
  providedIn: 'root'
})
export class RegisterService {

  constructor(private http: Http) { }
// A form data is passed as an argument to this function
      register(user) {
        let headers = new Headers();
        headers.append("Content-Type", "multipart/form-data")
        return this.http.post("http://localhost:3000/api/users/register", user, {headers})
        .pipe(map(res => res.json()))
    }
}

Маршруты на стороне сервера (примечание: не беспокойтесь о req.file.path)

// Registering a user
router.post("/register", upload.single("profileImage") , (req, res) => {
    let newUser = new User({
        username: req.body.username,
        password: req.body.password,
        email: req.body.email,
        name: req.body.name,
        bio: req.body.bio,
        interests: req.body.interests,
        profileImage: req.body.path
    })
    User.addUser(newUser, (err) => {
        if (err) return err;
        res.send({
            success: "true",
            msg: "You've logged in sucessfully"
        })
    })
})

1 Ответ

0 голосов
/ 01 сентября 2018

1-й шаг npm i body-parser

после установки модуля добавьте следующий код в ваш app.js

var bodyParser = require("body-parser");

app.use(bodyParser.urlencoded())


app.use(bodyParser.urlencoded({
  extended: true
}));

Редактировать

используемый URL-адрес http://localhost:3000/api/users/register

Но твой маршрут только /register.

Ваш маршрут и переданный URL должны совпадать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...