Hapijs:没有在本地主机上运行

时间:2015-06-12 11:38:58

标签: hapijs

Here is my server

有人可以建议我如何在localhost上运行它?

这是我的server.js文件代码

var Hapi = require('hapi');
var Path = require('path');
var server = new Hapi.Server({connections: {
routes: {
    files: {
        relativeTo: Path.join(__dirname,'public')
    }
  }
 }});
 server.connection({ port: 3000 });
 var mongoose = require("mongoose");
  var routes = require('./Routes/Route');


 mongoose.connect('mongodb://localhost/test', function(err, db) {
  if(!err) {
     console.log("We are connected");
   }
});

 server.views({
  engines: {
      html: require('handlebars')
  },
   path: Path.join(__dirname,'/Html')
});

 server.route(routes);

 server.start(function () {
   console.log('Server running at:', server.info.uri);
 });

2 个答案:

答案 0 :(得分:1)

要仅在localhost上运行服务器而不接受外部请求,您可以在server.connection配置中设置server.connection({ host: 'localhost', port: 3000 }) 字段。像这样:

  var params = {
        "_token": $("input[name=_token]").val(),
        "voorletters": $("input[name=voorletters]").val(),
        "tussenvoegsels": $("input[name=tussenvoegsels]").val(),
        "achternaam": $("input[name=achternaam]").val(),
        "gebruikersnaam": $("input[name=gebruikersnaam]").val(),
        "wachtwoord": $("input[name=wachtwoord]").val()
  }
  var formPost = $.post("/medewerkers-toevoegen", params);

本教程可帮助您获取仅在localhost上启动的基本hapi服务器:)

https://futurestud.io/tutorials/hapi-get-your-server-up-and-running

答案 1 :(得分:0)

通过对代码进行一些修改,我就能够毫无问题地启动您的服务器。我删除了路由,只是确保服务器启动,我至少可以从服务器获得404。我完成了所有这些。

如果您担心打印到控制台的内容,那是因为这是Hapi试图找到您机器的公共主机名。请参阅此documentation

现在,如果您希望阻止所有外部流量进入服务器,则需要在address函数调用中设置server.connection

它看起来像这样:

server.connection({ port: 3000, address: '127.0.0.1' });