【问题标题】:Yeoman MEAN application access refusedYeoman MEAN 应用程序访问被拒绝
【发布时间】:2016-06-04 03:00:34
【问题描述】:

在另一台机器上通过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');
});

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

我也在使用 yeoman,会不会有问题?

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

【问题讨论】:

    标签: node.js mongodb gruntjs yeoman mean


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2013-05-09
      • 1970-01-01
      • 1970-01-01
      • 2015-09-20
      • 2016-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多