嗨,大家好几周都在努力让这个工作起来。我读了很多,我几乎接近解决方案。我只是希望有经验的人可以帮助我。
此时我有:
为了测试我的服务器,我使用了这段代码:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World test sucess\n');
}).listen(8080);
console.log('Server is running at http://178.62.253.206:8080/');
哪个工作正常
我只是想让我的刮刀脚本使用这个来将html响应文本加载到控制台中:
var request = require('request');
var cheerio = require('cheerio');
request('http://www.xscores.com/soccer', function (error, response, html) {
if (!error && response.statusCode == 200) {
console.log(html);
}
});
我真的想以某种方式合并这两个代码。意思是我想将响应文本加载到我的服务器中。我尝试了几件事,但我不确定我应该如何表达代码。
非常感谢任何帮助
frederik
答案 0 :(得分:1)
由于您要发送html内容,请将content-type
更改为'text/html'
并尝试以下操作:
var http = require('http');
var request = require('request');
var cheerio = require('cheerio');
http.createServer(function (req, res) {
request('http://www.xscores.com/soccer', function (error, response, html) {
if (!error && response.statusCode == 200) {
console.log(html);
res.writeHead(200, {
'Content-Type': 'text/html'
});
res.end(html);
}
});
}).listen(8080);
console.log('Server is running at http://178.62.253.206:8080/');
答案 1 :(得分:0)
看起来应该是这样的!
var http = require('http');
var request = require('request');
var cheerio = require('cheerio');
http.createServer(function (req, res) {
request('http://www.xscores.com/soccer', function (error, response, html) {
if (!error && response.statusCode == 200) {
res.writeHead(200, { 'Content-Type':'text/plain'});
res.end('html:'+html);
}
}); })听(8080); console.log('服务器正在http://178.62.253.206:8080/')运行;