2016-09-24 54 views
2

我对Node很新。我刚刚通过Brew安装了它,当我在终端中运行node server.js时,终端在几个小时内什么都不做。节点server.js什么都不返回

node -v 
v6.6.0 

这是服务器文件,它来自我正在观看的教程视频。这个简单的快递服务器的目的是让我能够通过HTTP向前端快速提供测试数据。

的package.json:

{ 
    "name": "simple-server", 
    "version": "1.0.0", 
    "description": "", 
    "main": "server.js", 
    "scripts": { 
     "test": "echo \"Error: no test specified\" && exit 1", 
     "start": "node server.js" 
    }, 
    "author": "", 
    "license": "ISC", 
    "dependencies": { 
     "body-parser": "^1.14.1", 
     "express": "^4.13.3", 
     "path": "^0.12.7" 
    } 
} 

server.js文件:

var express = require('express'); 
var path = require('path'); 
var bodyParser = require('body-parser'); 
var app = express(); 

//Allow all requests from all domains & localhost 
app.all('/*', function(req, res, next) { 
    res.header("Access-Control-Allow-Origin", "*"); 
    res.header("Access-Control-Allow-Headers", "X-Requested-With, Content-Type,  Accept"); 
    res.header("Access-Control-Allow-Methods", "POST, GET"); 
    next(); 
}); 

app.use(express.static(path.join(__dirname + '/public'))); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({extended: false})); 

var persons = [ 
    "person1.jpg", 
    "person2.jpg", 
    "person3.jpg", 
    "person4.jpg", 
    "person5.jpg", 
    "person6.png" 
]; 

app.get('/persons', function(req, res) { 
    console.log("GET From SERVER"); 
    res.send(persons); 
}); 

app.listen(6069); 

在此先感谢

+2

您可以发布server.js? package.json是包元数据文件,而不是服务器本身 – eavidan

+0

@eavidan只是做了 – leo0019

+0

您是否安装了依赖关系'npm install'?当你获得'http://127.0.0.1:6069/persons'时你有什么东西吗? – Sylwit

回答

2

尝试添加console.log("started!")之前app.listen。我猜服务器启动了,但是就像在你的代码中看到的那样,唯一的日志就是当它接收到一个请求时。

尝试在您的浏览器中访问http://localhost:6069/persons

编辑:这定义了服务器响应

app.get('/persons', function(req, res) { 
    console.log("GET From SERVER"); 
    res.send(persons); <-- server sends persons array to client 
}); 
+0

当我在浏览器中访问它时,它给了我[“person1.jpg”,“person2.jpg”,“person3.jpg”,“person4.jpg”,“person5.jpg”,“person6.png”]。我在app.listen之前添加了console.log,但没有任何事发生。 – leo0019

+0

将console.log更改为console.log(“started!”)。无论如何,由于浏览器包含该阵列,恭喜 - 您的服务器正在工作。然而,看起来你可能缺乏一些知识,所以我建议你阅读一本手册或深入的教程。 – eavidan