在 Windows 8 上使用 Express 的 node-webkit“错误:监听 EACCES”

Posted

技术标签:

【中文标题】在 Windows 8 上使用 Express 的 node-webkit“错误:监听 EACCES”【英文标题】:node-webkit with Express on Windows 8 "Error: listen EACCES" 【发布时间】:2014-07-12 04:26:42 【问题描述】:
Uncaught node.js Error 

Error: listen EACCES
    at exports._errnoException (util.js:677:11)
    at Server._listen2 (net.js:1060:19)
    at listen (net.js:1113:10)
    at Server.listen (net.js:1188:5)
    at Function.app.listen (C:\workspace\ticketpicker\node_modules\express\lib\application.js:534:24)
    at eval (file:///C:/workspace/ticketpicker/scripts/server/server.js:122:5)

这是我得到的错误。我有一个在 node-webkit(桌面库)上运行的节点应用程序,并且我有一个 angularjs 前端。我在 Windows 8 机器上的端口 8080 上使用 Express 运行我的服务器,并关闭了防火墙。

var express  = require('express');
var app      = express();                 // create our app w/ express
var mongoose = require('mongoose');           // mongoose for mongodb
var ActiveDirectory = require('activedirectory');

var port = 8080; //process.env.PORT || 8080;

 app.get('*', function(req, res) 
    res.sendfile('./templates/index.html'); // load the single view file (angular will handle the page changes on the front-end)
  );
var http = require('http');
http.createServer(app).listen(port);
app.listen(port);

这是我服务器的代码。我希望我的服务器监听某个端口,这样我就可以从我的 Angular 前端发出 http 请求,这样我就可以从节点服务器获取数据。

有人可以帮我弄清楚如何解决这个错误吗?

【问题讨论】:

【参考方案1】:

您在同一个端口上监听了两次。摆脱app.listen(port);

【讨论】:

我的菜鸟移动...尝试修复而不取出一些旧代码...如果修复它,我会告诉您。谢谢!!

以上是关于在 Windows 8 上使用 Express 的 node-webkit“错误:监听 EACCES”的主要内容,如果未能解决你的问题,请参考以下文章

如何使用适用于 Windows 8 的 Visual Studio Express 2012 创建适用于 Windows XP 的应用程序

SignalR 不会使用 Chrome 或 IE 中的 VS2013 在 Windows 8 上与 IIS Express 建立连接

适用于 Windows Phone 8 的 Visual Studio Express 2012 - 它在哪里?

无法让 IIS Express 8 beta 将网站作为 64 位进程运行

开发 Windows phone 8、SQL Server Express 或 SQL Server Compact 或 SQLite 时最好使用啥? [关闭]

使用 ISO 映像在 Windows x64 上安装 msvc 2012 express 失败,附加日志安装