Tag: http

5个请求后,node.js http.get挂起到远程站点

我正在写一个简单的API端点来确定我的服务器是否能够连接到互联网。 它工作的很好,但经过5次请求(正好5次,每次)请求挂起。 当我将Google切换到Hotmail.com时,也会发生同样的事情,这让我觉得这是我的最终目的。 我需要closureshttp.get请求吗? 我以为这个函数自动closures请求的印象。 // probably a poor assumption, but if Google is unreachable its generally safe to say that the server can't access the internet // using this client side in the dashboard to enable/disable internet resources app.get('/api/internetcheck', function(req, res) { console.log("trying google…"); http.get("http://www.google.com", function(r){ console.log("Got status code!: " +r.statusCode.toString()); res.send(r.statusCode.toString()); res.end(); console.log("ended!"); […]

基于NodeJS的HTTP客户端:如何validation请求?

这是我必须做一个简单的GET请求的代码: var options = { host: 'localhost', port: 8000, path: '/restricted' }; request = http.get(options, function(res){ var body = ""; res.on('data', function(data) { body += data; }); res.on('end', function() { console.log(body); }) res.on('error', function(e) { console.log("Got error: " + e.message); }); }); 但是“/ restricted”这个path需要一个简单的基本HTTPauthentication。 我如何添加凭据进行身份validation? 在NodeJS手册中,我找不到与基本httpauthentication相关的任何东西。 提前致谢。

Nodejs通过同一端口的HTTP和HTTPS

我一直在谷歌search,在这里看看在stackoverflow,但我找不到我喜欢的答案;-) 我有一个通过HTTPS和端口3001运行的NodeJS服务器。现在我想要获取端口3001上的所有传入HTTP请求,并通过HTTPS将它们redirect到相同的URL。 这一定是可能的。 不是吗? 谢谢!

如何制作分布式node.js应用程序?

创build一个node.js应用程序非常简单。 var app = require('express')(); app.get('/',function(req,res){ res.send("Hello world!"); }); 但是,假设人们痴迷于你的Hello World! 应用程序并耗尽您的资源。 这个例子怎么能在实践中扩大呢? 我不明白,因为是的,你可以在不同的计算机上打开几个node.js实例 – 但是当有人访问http://your_site.com/时,它直接针对特定的机器,特定的端口,特定的节点进程。 又怎样?

Express.js在控制器中获取http方法

我正在build立一个registry(护照本地authentication,forms帮助)。 因为注册只知道GET和POST我想在一个函数中完成整个处理。 换句话说,我正在寻找类似的东西: exports.register = function(req, res){ if (req.isPost) { // do form handling } res.render('user/registration.html.swig', { form: form.toHTML() }); };

node.js – 使用gzip / deflate压缩的简单http请求

我想弄清楚如何轻松发送HTTP / HTTPS请求,并处理gzip /压缩响应与cookies。 我发现最好的是https://github.com/mikeal/request处理除压缩之外的所有内容。 有没有一个模块或方法可以满足我所要求的一切? 如果没有,我可以以某种方式结合请求和zlib吗? 我试图结合zlib和http.ServerRequest,它失败了。 谢谢!

Node.JS Webserver中的安全性

所以,我正在学习Node.JS的方法,到目前为止我都很喜欢它。 我有几个项目已经在工作,我想我可以利用nodejs。 不过,我担心安全问题。 如果我使用Node.JS的http模块编写一个自定义的networking服务器,我是否可能超级受到攻击? Apache / IIS已经有多年 (和多年)的专业团队将安全build设到他们的networking服务器,仍然有人继续发现漏洞。我的自制Web服务器可能会更容易攻击吗? 我可以专注于什么东西来build立一个安全的好层到我的networking服务器? 那里有没有好的文章涵盖了这个话题?

Node.JS等待发出HTTP请求的REST Service的callback

我使用express模块​​在Node.JS中创build一个Restful API。 在我的服务中,我正在向外部端点(服务器端)发出额外的http请求,并且需要将这些http请求中的数据返回给我的Web服务请求主体。 我已经确认,如果我在Web服务正在执行的所有操作上使用console.log ,我正在获取所需的数据。 但是,当我尝试将这些值返回给服务时,他们将返回空值。 我知道这是因为asynchronous和callback不等待http请求完成。 有没有办法做到这一点?

在Node.js上连接“无法GET /”

我试图开始使用像这样connect一些静态网页: var connect = require("connect"); var nowjs = require("now"); var io = require("socket.io"); var app = connect.createServer( connect.static(__dirname + '/public') ); app.listen(8180); 所以我在app.js文件所在的同一目录的/public目录下添加了一个简单的index.html ,但是当我尝试在浏览器上查看页面时,我得到了来自节点的响应: 不能获取 / 我做错了什么,我该如何纠正?

Chrome浏览器不会将if-modified-since标题发送到服务器

我有这些头由服务器发送到客户端: Cache-Control:private Connection:keep-alive Content-Encoding:gzip Content-Type:text/html Date:Sun, 27 Nov 2011 11:10:38 GMT ETag:"12341234" Set-Cookie:connect.sid=e1u…7o; path=/; expires=Sun, 27 Nov 2011 11:40:38 GMT; httpOnly Transfer-Encoding:chunked last-modified:Sat, 26 Nov 2011 21:42:45 GMT 我希望客户端validation服务器上的文件没有发生变化,如果是“304”,则发送“200”。 Firefox发送: if-modified-since: Sat, 26 Nov 2011 21:42:45 GMT if-none-match: "12341234" 为什么刷新的页面上的chrome不一样? 我在.Net运行的行为之后: context.Response.Cache.SetCacheability(HttpCacheability.ServerAndPrivate)