Tag: networking抓取

将urlpathredirect到端口

我有很多Web应用程序运行在服务器上。 其中一些我做了,其中一些是开源(如开放云)。 我所有的networking应用都运行在特定的端口上。 我的端口80仍然是免费的。 我想在80端口上为我的所有应用程序制作一个漂亮的欢迎页面,以允许我的同事在本地networking上查看它们。 我的问题是设置url地图。 我希望pathhttp://machine-name:80/open-cloud/与http://machine-name:8080/ (如果可能,包括静态文件)完全相同。 另外一个可能的解决scheme是使用子http://open-cloud.machine-name:80/例如http://open-cloud.machine-name:80/ 。 但是我不知道如何在本地networking中这样做。 我正在寻找Python,node.js或Go(这将是太棒了!)的解决scheme。 重要的是要注意,我的web应用程序没有运行在ssl上,它可能会处理非常低的stream量。 毕竟它只是一个本地networking! 任何帮助和参考将是受欢迎的。 干杯!

在Web服务器上连续运行node.js包

我使用的博客平台幽灵开始时,我运行npm start 。 只有当我运行npm start才会显示在网站的URL上。 如果我在terminal上执行了command-c命令,就会退出运行包,站点停止运行,直到我再次运行npm start 。 有没有办法build立服务器,以保持网站不断? 现在,我必须在进行任何编辑之前取下网站,然后使用npm start重新启动它。

Vagrant上的nodejs – 无法从外部加载页面

尝试加载浏览器中的http:// localhost:3000不能从我的Windows机器,但是当我这样做 curl -v http://localhost:3000 在我的stream浪VM – 页面加载罚款。 我正在考虑端口转发问题,所以我设置了 config.vm.network :forwarded_port, guest: 3000, host: 3000 在vagrant的configuration文件中,但它没有帮助。 我试图捕捉到我的虚拟机端口3000的电话,就像这样 sudo tcpdump -i eth0 'port 3000' 这表明stream浪VM可以听到我的呼叫,但是nodemon不知道。 我卡在这里,任何build议表示赞赏。 谢谢!

访问运行Node.js的内部Web服务器

我有一台WiFi的两台笔记本电脑。 一个是XP(192.168.2.100),另一个是Peppermint Linux(192.168.2.106)。 两者都通过WiFi路由器(192.168.2.1)连接到互联网。 薄荷有一个Node.jsnetworking服务器运行,我可以看到当我运行本地主机:8000。 我能够从XP的笔记本电脑ping到ssh和peppermint笔记本电脑。 现在我必须能够看到在XP中的Web服务器,当我使用正确的端口(即:192.168.2.106:8000)的IP地址,但什么都没有发生。 它可能是端口(8000)在XP笔记本电脑上closures? 我也尝试了“聆听”的9000端口,但无济于事。 任何帮助表示赞赏! 编辑:为了testing设置是否正确我安装了Apache和瞧,它的工作! 但问题仍然存在,我需要做什么才能够从XP-laptop到达Node.js Web服务器?

通过Socketstream式传输一系列JSONstring

这可能更多的是关于套接字/ TCP的行为,比node.js。 我在node.js中编写了一个服务器,它通过套接字(而不是HTTP)接收一系列的JSON对象。 客户端(iOS应用程序)通过此套接字stream式传输JSONstring。 每个JSONstring的大小都不相同(从几个字节到几个K字节),因此计时。 每个JSONstring都将用一个“写入”操作发送。 当我从套接字接收数据时,我调用JSON.parse()。 简单的testing案例很好,但我不确定这是否足够。 我想知道是否需要担心以下情况:(1)'data'包含多个JSON对象(2)单个JSON对象通过多个数据发送。

如何在node.js中使用cheerio获取元素名称

如何在cheerio中获取元素的名称? 相当于jQuery的是.attr('name')但是在cheerio中返回undefined 。

梦魇有条件的等待()

我正在尝试使用梦魇来抓取网页,但是只有等到#someelem存在时才会出现。 否则,我想让梦魇继续前进。 这怎么可以使用.wait() ? 我不能使用.wait(ms) 。 使用.wait(selector)意味着梦魇将一直等待,直到元素出现,但是如果页面永远不会有这个元素,那么梦魇将永远等待。 最后一个选项是使用.wait(fn) 。 我已经尝试过这样的事情了 .wait(function(cheerio) { var $ = cheerio.load(document.body.outerHTML); var attempt = 0; function doEval() { if ( $('#elem').length > 0 ) { return true; } else { attempt++; if ( attempt < 10 ) { setTimeout(doEval,2000); //This seems iffy. } else { return true; } } } […]

NightmareJS:如何阻止加载资源?

我正在做一个噩梦般的小型刮板,但是加载所有的外部资源需要很长的时间,并消耗大量的带宽。 我怎样才能加载基本页面的HTML(没有图像,CSS等)? 我在网上找不到任何相关信息,也许我找错了地方。

Nodejs:许多客户端通过一个套接字请求

场景:我有很多客户端(通过Socket.io的网页)连接到一个Node.js服务器(称之为A)。 服务器充当另一个服务(Node.js)的应用程序“代理”,让我们调用服务B.实际上,页面使用代理与服务B通信。 我试图理解,如果我可以只从服务器A打开一个套接字到服务B,只是为了获得性能和资源(在服务器A上的第一个客户端连接上,服务器将打开套接字到B并维护它打开信息双向stream动)。 当然问题在于,如果没有某种干预,消息可能会相互混乱,造成B服务无法理解的混乱。 我是一个在套接字编程新手,我想知道如果这是一个“解决”的问题,或只是错误的答案:)谢谢

检测使用nodejs的响应主体编码

我正在用jsdom和jQuery写一个蜘蛛,就像这个例子 只有一个问题:当网页不是UTF-8编码,响应头的内容types不告诉我的字符集,如何检测响应体的编码? 我知道节点iconv可以帮助,但问题是我需要先了解编码 (奖金问题:Web浏览器如何自动检测网页的编码?)