无法从Angular前端连接到NodeJS服务器

时间:2019-05-06 12:21:49

标签: node.js angular postgresql

我正在开发一个Angular应用程序,该应用程序连接到postgresql并对其进行简单的操作。在虚拟机上,一切正常运行,但是当我开始在官方服务器上对其进行测试时,情况变得更糟。

我的Angular Frontend很好用,一切都显示出来等等,但是当我要登录时,当我按下按钮时,控制台中会出现以下错误:

zone.js:2969 OPTIONS http://192.168.30.5:3132/auth/login
net::ERR_CONNECTION_TIMED_OUT

我的前端在端口4200上工作,我从以下端口开始

ng serve --host=192.168.30.5

NodeJS服务器仅以

开头
node server.js

我已经检查了netstat -nltp,它显示:

192.168.30.5:4200   0.0.0.0:*    LISTEN    20597/ng serve --ho
:::3132             :::*         LISTEN    20665/node-default

我尝试测试其他地址组合(使用localhost代替192.168.30.5,使用0.0.0.0代替,使用127.0.0.1等),并且没有任何效果。

我看到的一件事是,当我使用地址192.168.30.5时,错误是

ERR_CONNECTION_TIMED_OUT

但是当我使用本地主机时,错误更改为

ERR_CONNECTION_REFUSED

我希望这个应用程序可以在VM上正常工作,因此,例如当我单击登录按钮时,它将登录我而不是在控制台中显示错误。我将不胜感激。

我的server.js文件:

console.log("NodeJS Activated");
(function () {

  'use strict';

  const app = require('./app');
  const debug = require('debug')('herman-express:server');
  const http = require('http');

  const port = normalizePort(process.env.PORT || '3132');
  app.set('port', port);

  const server = http.createServer(app);
  server.listen(port);
  server.on('error', onError);
  server.on('listening', onListening);

  function normalizePort(val) {
    const port = parseInt(val, 10);
    if (isNaN(port)) {
      return val;
    }
    if (port >= 0) {
      return port;
    }
    return false;
  }

  function onError(error) {
    if (error.syscall !== 'listen') {
      throw error;
    }
    const bind = typeof port === 'string' ? 'Pipe ' + port : 'Port ' + port;
    switch (error.code) {
      case 'EACCES':
        console.error(bind + ' requires elevated privileges');
        process.exit(1);
        break;
      case 'EADDRINUSE':
        console.error(bind + ' is already in use');
        process.exit(1);
        break;
      default:
        throw error;
    }
  }

  function onListening() {
    const addr = server.address();
    const bind = typeof addr === 'string' ? 'pipe ' + addr : 'port ' + addr.port;
    debug('Listening on ' + bind);
  }

}());

0 个答案:

没有答案