Yeoman MEAN申请访问被拒绝

时间:2016-02-22 15:41:15

标签: node.js mongodb gruntjs yeoman mean

虽然应用程序加载了,但是在另一台机器上通过Grunt serve运行我的应用程序时,Mongo和节点的信息无法加载:

Error message

这是我的服务器代码:

//Loading requiriments
var express = require('express');
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var methodOverride = require('method-override');
var _ = require('lodash');




// Starting application

var app = express();

//  Middleware for REST API

app.use(bodyParser.urlencoded({
  extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride('X-HTTP-Method-Override'));

// CORS (cross domain refference) Support

app.use(function(req, res, next) {
  res.header('Access-Control-Allow-Origin', '*');
  res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
  res.header('Access-Control-Allow-Headers', 'Content-Type');
  next();
});

app.use('/hello', function(req, res, next) {

  res.send('Hello Robin');
})

// connecting to MongoDB

mongoose.connect('mongodb://localhost/tvapp');
mongoose.connection.once('open', function() {

  // Load models

  app.models = require('./models/index');

  // Load the routes.
  var routes = require('./routes');
  _.each(routes, function(controller, route) {
    app.use(route, controller(app, route));
  });

  //log server action

  console.log('Listening to port 3000');

  // Listen on port defined
  app.listen(3000, '127.0.0.1');
});

有没有人知道我可能做错了什么?

我也在使用自耕农,这会是个问题吗?

另外,在我的机器上工作正常,它不能在可以单独访问应用程序和服务器的外部机器上工作,但应用程序不会运行服务器

1 个答案:

答案 0 :(得分:0)

您使用的IP主机地址为localhost,即127.0.0.1。此IP仅适用于运行它的计算机。要使其他计算机访问您的服务器,您必须使用其他IP主机。如果它位于同一本地网络上,则可以使用LAN IP。如果没有,您将不得不使用您的公共IP。如何查找LAN或公共IP地址取决于您的操作系统。

相关问题