从 Request.js 请求方法返回结果? [英] Return results from Request.js request method?
本文介绍了从 Request.js 请求方法返回结果?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
var request = require('request');varcheerio = require('cheerio');请求(网址,功能(错误,响应,html){if (!error && response.statusCode == 200) {var $ =cheerio.load(html);var link = $('.barbar li a');var Url = link.attr('href');var Title = link.find('span').first().text();var 结果 = [Url, Title];返回结果;}});控制台日志(结果);
<块引用><块引用>
结果未定义...
我想使用结果向 HTML 页面添加超链接,但我不知道如何访问结果/在回调之外返回它们.我看过其他帖子,但它们都使用其他库,并且通常只有一个在范围内使用 console.log 的示例.
解决方案
var request = require('request');varcheerio = require('cheerio');功能 doYourThing(回调){请求(网址,功能(错误,响应,html){如果(错误){ 返回回调(错误)};if (!error && response.statusCode == 200) {var $ =cheerio.load(html);var link = $('.barbar li a');var Url = link.attr('href');var Title = link.find('span').first().text();var 结果 = [Url, Title];回调(空,结果);}});函数主(){doYourThing(函数(错误,结果){控制台日志(错误,结果);});};主要的();
var request = require('request');
var cheerio = require('cheerio');
request(url, function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var link = $('.barbar li a');
var Url = link.attr('href');
var Title = link.find('span').first().text();
var results = [Url, Title];
return results;
}
});
console.log(results);
results is undefined...
I want to use the results to add a hyperlink to an HTML page, but I don't know how to access the results/ return them outside of the callback. I've seen other posts but they all use other libraries and usually only have an example using console.log within the scope.
解决方案
var request = require('request');
var cheerio = require('cheerio');
function doYourThing(callback){
request(url, function (error, response, html) {
if(error){ return callback(error) };
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var link = $('.barbar li a');
var Url = link.attr('href');
var Title = link.find('span').first().text();
var results = [Url, Title];
callback(null, results);
}
});
function main(){
doYourThing(function(err, results){
console.log(err, results);
});
};
main();
这篇关于从 Request.js 请求方法返回结果?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文