Javascript 邮递http://localhost:4200/ 404未找到(从Angular到Nodejs的请求)

Javascript 邮递http://localhost:4200/ 404未找到(从Angular到Nodejs的请求),javascript,html,node.js,angular,rest,Javascript,Html,Node.js,Angular,Rest,我想知道我在这里做什么: 我在这里遇到的错误是什么意思?它表明了什么?解决这个问题的方法是什么 app.jsfromnode.js var express = require('express'); var path = require('path'); var favicon = require('static-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var

我想知道我在这里做什么:

我在这里遇到的错误是什么意思?它表明了什么?解决这个问题的方法是什么

app.js
from
node.js

var express = require('express');
var path = require('path');
var favicon = require('static-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
const cors = require("cors");

var corsOptions = {
};

var routesApi = require('./app_api/routes/index');
var app = express();

app.use(bodyParser.json());
app.use(bodyParser.urlencoded());

require('./app_api/models/db')

var routesApi = require('./app_api/routes/index');

app.use('/api', routesApi)
app.use('/hello', routesApi)
app.use('/', routesApi)

module.exports = app;
app_api/routes/index.js

var express = require('express')
var router  = express.Router()

var ctrlLocations = require('../controllers/locations')
var ctrlReviews   = require('../controllers/reviews')

router.post('/', ctrlLocations.helloCreate);

module.exports = router
你好服务。服务。ts来自Angular

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';

const baseUrl = 'http://localhost:4200';

@Injectable({
  providedIn: 'root'
})
export class HelloServiceService 
{
  constructor( private http: HttpClient ) { }

  create( data: {} ) 
  {
    console.log("data:", data)
    return this.http.post(baseUrl, data);
  }

}

首先,您的nodejs应用程序中缺少指定要侦听的端口的语句。比如:

app.listen(3000, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})
其次,您不想向
http://localhost:4200
因为它是您的前端angular应用程序,不支持POST请求,这就是您获得404的原因。您希望将请求发送到您的节点应用程序,而不是上面示例中的
http://localhost:3000

试试看。

您希望在端口4200上运行什么来接收发送到/?这是Angular dev服务器的默认端口,您是否已将其移动到其他端口或添加了代理?express应用程序运行在哪个端口?您是否尝试过从其他客户(curl、postman等)提出相同的请求,以查看问题是在前端还是后端?@jornsharpe感谢您提出这些问题。这些问题将有助于发现我在做什么。