Node.js 噩梦永远在上演?
我在CentOS 7 server()上运行了一个简单的噩梦应用程序,它将永远运行,尽管它通过一个简单的res.send('hello world')传递,但不会返回任何结果 我正在使用节点6.11。同样的代码在本地PC上运行良好Node.js 噩梦永远在上演?,node.js,nightmare,Node.js,Nightmare,我在CentOS 7 server()上运行了一个简单的噩梦应用程序,它将永远运行,尽管它通过一个简单的res.send('hello world')传递,但不会返回任何结果 我正在使用节点6.11。同样的代码在本地PC上运行良好 const express = require('express') const app = express() app.get('/', function (req, res) { //res.send('hello world')
const express = require('express')
const app = express()
app.get('/', function (req, res) {
//res.send('hello world'); => works fine for port 3000
var Nightmare = require('nightmare');
var nightmare = Nightmare({ show: false });
nightmare
.goto('https://www.google.com')
.wait('#searchform')
.evaluate(function () {
return (document.body.innerHTML);
})
.end()
.then(function (result) {
console.log(result);
})
.catch(function (error) {
console.error('Search failed:', error);
});
})
app.listen(3000, function () {
console.log('Example app listening on port 3000!')
})
首先,Electron具有静态库依赖项,您需要在服务器上单独安装 此外,您还需要使用XVFB运行节点服务器,因为它没有显示器。() 命令将以如下方式结束。
$xvfb run node.js
我在Ubuntu上安装了所有东西,如下所示:
apt-get install -y libgtk2.0-0 libnotify-bin libgconf-2-4 libnss3 libxss1
x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic
x11-apps clang libdbus-1-dev libgtk2.0-dev libnotify-dev libgnome-keyring-
dev libgconf2-dev libasound2-dev libcap-dev libcups2-dev libxtst-dev libxss1
libnss3-dev xvfb
您将需要执行CentOS等效的操作
运行electron standalone进一步调试
$/node\u模块/electron/dist/electron
是否可以从CentOS服务器访问google.com?代码在我看来很好。它应该是默认超时(30秒),或者应该显示一些错误。在Linux上运行无头噩梦EJS似乎有问题。对谷歌有很多抱怨,但很难让它工作。你有没有试过在没有Express
的情况下运行它,即直接运行?噩梦严重依赖电子来完成繁重的工作。而Electron又依赖于几个以UI为中心的依赖项(例如libgtk+),这些依赖项在服务器发行版中经常缺失。和