Tag: httpserver

怎样才能在node.js上运行的HTTP服务器中只有一小块空间来表示连接?

我已经读过在node.js中创build的HTTP服务器不会为每个传入连接(请求)创build新的线程。 相反,它会执行一个已被注册为与接收请求事件相对应的callback的函数。 据说每个连接都是由堆中的一些小空间来表示的。 我无法弄清楚这一点。 连接是否由套接字表示? 是否应该打开每个连接到node.js服务器的套接字,这意味着每个连接不能仅由JavaScript堆中的空间分配来表示?

是http.ServerResponse.write()阻塞?

有没有可能写非阻塞response.write? 我已经写了一个简单的testing,看看其他客户端可以连接,而一个下载文件: var connect = require('connect'); var longString = 'a'; for (var i = 0; i < 29; i++) { // 512 MiB longString += longString; } console.log(longString.length) function download(request, response) { response.setHeader("Content-Length", longString.length); response.setHeader("Content-Type", "application/force-download"); response.setHeader("Content-Disposition", 'attachment; filename="file"'); response.write(longString); response.end(); } var app = connect().use(download); connect.createServer(app).listen(80); 这似乎是write封锁! 难道我做错了什么? 更新所以,它不会阻塞,并在同一时间阻止。 这并不意味着可以同时下载两个文件。 而且它阻止了创build缓冲区是一个漫长的操作。

nodejs和socket.io.jspathparsing

我刚刚开始学习socket.io.js库的nodejs。 我的问题并不是真的与这些库中的东西有关,而是与访问浏览器如何提供这些文件有关。 在我的服务器目录中,只有2个文件(index.html和server.js)以及node_modules目录(用于socket.io)。 在index.html中,我有一个脚本标记,包括如下的客户端socket.io lib, <script src="/socket.io/socket.io.js"></script> relecvant服务器代码是, var server = http.createServer( function(req, res) { res.writeHead(200, { 'Content-type': 'text/html'}); res.end(fs.readFileSync(__dirname + '/index.html')); } ).listen(8080, function() { console.log('Listening at: http://localhost:8080'); } ); 我的问题是这个文件存在于服务器上的位置(在index.html所在的目录中没有socket.io目录)? 那么如何以及从哪里通过networking浏览器正确parsing和下载呢? 对不起noob问题。

JSON数据没有得到显示

我是Angular JS的新手,正在尝试使用JSON数据调用Rest API。 但是当我运行我的HTTP服务器时,没有任何显示。 当我在控制台中放下响应时,我正在接收响应。 Htmlcode: <html ng-app="myapp"> <head> <div ng-controller="header"> <h1><center>{{apptitle}}</center></h1> </div> <div ng-controller="contactinfo"> <table class="table"> <thead> <tr> <th>Sl.No</th> <th>Name</th> <th>Address</th> <th>Phno</th> </tr> </thead> <tbody ng-repeat="info in contact"> <tr> <th scope="row">1</th> <td>{{ info.name }}</td> <td>{{ info.location }}</td> <td>{{ info.phone }}</td> </tr> <tr> <th scope="row">2</th> <td>{{ info.name }}</td> <td>{{ info.location }}</td> <td>{{ info.phone }}</td> </tr> […]

节点相当于`python -m SimpleHTTPServer`?

这些模块的存在意味着Node没有提供一个等价的命令: https://www.npmjs.org/package/simplehttpserver https://www.npmjs.org/package/simple-http-server

节点http-server没有提供更新的html文件

我正在构build一个angular度(主要是UI路由器)的前端Web应用程序,并通过节点HTTP服务器提供HTML文件进行本地开发。 我注意到,当我进行更新时,http-server不提供我的静态html文件,这对我的本地开发是一个挑战。 我使用npm install http-server -g在全局npm install http-server -g ,并通过转到根项目文件夹并运行http-server来启动它。 它默认为localhost:8080-似乎工作的两种方式是在每次更新后更改端口号或者通过chrome隐身模式。 有没有办法正常使用HTTP服务器,而无需更改端口或使用隐身模式? 如果相关,我正在使用MBP v。10.11.3 谢谢!

在Ubuntu上安装并运行browserquest

我已经安装了node.js和必要的包来运行browserquest 。 我已经启动了浏览器服务器,它运行在端口8080上,当我到我的浏览器并键入http:// localhost:8080 /状态,我可以看到服务器正在运行,当前没有客户端连接。 我使用client / config / build_config.json文件中的configuration构build客户端 { "host": "http://127.0.0.1", "port": 8080 } 我在bin / build.sh中构build我的客户端。 然后我运行这个命令来创buildhttp-server来提供客户端文件。 http-server path-to-client-build -p 8000 我可以通过访问http:// localhost:8000 / index.html来查看带有httpserver的索引页面,但是当我尝试连接时,它说连接到服务器后卡住了。 注意:我正在使用这个http-server托pipe客户端文件http://search.npmjs.org/#/http-server

node.js使HTTP服务器的请求和响应全局?

我刚刚开始使用node.js并运行http://nodebeginner.org/index.html 。 伟大的启动教程,但我真的想知道是否有可能使请求和响应'全球',所以任何模块加载当前传入的请求可以访问这些…而不是注入。 想法?

节点http-server用index.html响应任何请求

我已经在全球安装了http-server 。 我从本地端口8080 myDir启动它。在myDir我有index.html 。 如果我请求(从浏览器) http://localhost:8080/我得到index.html,这是好的。 如果我请求通过http://localhost:8080/anything我没有得到任何来自服务器的回应。 我想,相反,我的服务器总是以index.html响应任何http端口8080端口上的本地主机。 这可能吗。 提前致谢

在node:socket.io或net模块中创build客户端 – 服务器TCP连接

我是节点的新手,我想创build一个客户端和服务器之间使用node.js的TCP连接。 我已经有一个build立在节点上的HTTP服务器,它向客户端发送/从客户端发送/接收数据。 现在,我需要添加这个“连接”的概念。 我一直在阅读教程和论坛,我有点困惑。 如果我理解的很好,有两种方法可以创build这种连接: 将我现有的http服务器升级到socket.IO服务器 var app = require('http').createServer(handler); var io = require('socket.io').listen(app); function handler(req, res){ //code } app.listen(8080); 创build一个基于networking模块的单独的TCP服务器,然后build立这个TCP服务器和HTTP服务器之间的连接,就像这里所build议的那样在node.js中的TCP服务器和HTTP服务器之间创buildWebSockets var net = require('net'); net.createServer(function (socket) { socket.write('Hello World!\r\n'); socket.end(); }).listen(1337); 那么,我们什么时候需要创build两个单独的TCP和HTTP服务器,什么时候我们只需要一个服务器(将HTTP服务器升级到一个socket.IO)呢?