Как отправить данные через сервер с помощью Angular Express? Ошибка 404 - PullRequest
0 голосов
/ 04 июля 2019

Я пытаюсь получить информацию о регистрации пользователя из моего интерфейса с помощью angular и отправить его через сервер (экспресс). Я не уверен, что я делаю неправильно. любое решение? Я назвал путь страницы регистрации «регистрация», поэтому я использую «/ registration» для моего поста API.

user-register.component.ts:


  registerUser(event) {
    event.preventDefault();
    const target = event.target;
    const registerName = target.registerName.value;
    const registerEmail = target.registerEmail.value;
    const registerPassword = target.registerPassword.value;
    const companyName = target.companyName.value;
    const companyCategory = target.companyCategory.value;


    this.auth.registerUser(registerName, registerEmail, registerPassword, companyName, companyCategory).subscribe(data => {
      console.log(data);
      /*if (data.success) {
        this.router.navigate(['login']);
      }*/
    });
    console.log(registerName)
  }

auth.service.ts:


  registerUser(registerName, registerEmail, registerPassword, companyName, companyCategory) {
    return this.http.post('/registration', {
      registerName,
      registerEmail,
      registerPassword,
      companyName,
      companyCategory
    });
  }


server folder : index.js

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

app.use(bodyParser.json());

app.post('/registration', (req, res) => {

console.log(req.body);
});

app.listen (4200, ()=> console.log('Server listen at 4200'));

1 Ответ

0 голосов
/ 04 июля 2019

Я обнаружил, что проблема была в auth.service.ts: я изменил:

registerUser(registerName, registerEmail, registerPassword, companyName, companyCategory) {
    return this.http.post('/registration', {
      registerName,
      registerEmail,
      registerPassword,
      companyName,
      companyCategory
    });
  }

на этот

registerUser(registerName, registerEmail, registerPassword, companyName, companyCategory) {
    return this.http.post('http://localhost:SERVERPORT/registration', {
      registerName,
      registerEmail,
      registerPassword,
      companyName,
      companyCategory
    });
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...