node.js请求模块,如何使用步骤将请求的URL主体传递给下一个函数

米特尔·马赫什瓦里(Mitul Maheshwari)

我想下载一个html页面并将其主体部分转发到下一个功能。我已使用步骤来序列化功能。我正在使用请求模块下载页面。

    var Step = require('step');
    var request = require('request');

    Step(
     function getHtml() {
    if (err) throw err;
    var url = "my url here";
    request(url, function (error, response, html) {
    // i want to pass the html object to the next function view
    }); 

    },
    function view(err, html) {
    if (err) throw err;
    console.log(html);
    }
    );

如果我这样做,request(url, this)则它将整个页面数据(响应和html)传递给下一个函数。

如何更改上述代码,仅将html传递给下一个函数?

胡安帕科

请记住从步骤文档:

它接受任意数量的函数作为参数,并使用在此上下文中传递的内容作为下一步的回调,以串行顺序运行它们。

因此,当每个步骤都被调用时,this就是您对下一步的回调。但是,您正在通过request呼叫输入回调,因此this到那时将有所变化。因此,我们只缓存它。

var Step = require('step');
var request = require('request');

Step(
  function getHtml() {
    //if (err) throw err; <----- this line was causing errors
    var url = "my url here"
      , that = this   // <----- storing reference to current this in closure
    request(url, function (error, response, html) {
      // i want to pass the html object to the next function view
      that(error,html)    // <----- magic sauce
    }); 

  },
  function view(err, html) {
    if (err) throw err;
    console.log(html);
  }
);

我的添加内容以“ <------”开头。祝您编码愉快!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用node.js测试API如何处理无效的JSON语法请求主体

来自分类Dev

Node.js如何处理一个线程的同时请求?

来自分类Dev

Node.js请求模块....在主体中发送JSON以使用api请求进行API请求

来自分类Dev

Node.js-带“请求”模块的PUT

来自分类Dev

Node.js异步系列-将参数传递给下一个回调

来自分类Dev

Node.js异步循环,下一个循环之前从函数进行回调

来自分类Dev

带有Express的Node.js-抛出错误与下一个错误

来自分类Dev

node.js非阻塞POST请求以等待另一个POST请求

来自分类Dev

在node.js中,如何从app.js中的另一个模块中的模块访问函数?

来自分类Dev

函数完成后,Node.js回调下一个循环

来自分类Dev

AWS步骤函数映射状态:将当前迭代的输出作为输入传递给下一个迭代

来自分类Dev

Node.js:一个AWS实例或每个请求一个

来自分类Dev

如何在Node.js Lambda中使用请求模块

来自分类Dev

如何将POST请求主体映射到各个字段(NODE.JS)

来自分类Dev

使用请求模块抓取Node.js

来自分类Dev

如何将Node.js请求路由到另一个Node.js应用程序?

来自分类Dev

Node.js请求模块....在主体中发送JSON以使用api请求进行API请求

来自分类Dev

如何使用Node.js的“异步”模块在一个函数中执行“ A”或“ B”,然后始终执行“ C”?

来自分类Dev

在ZIP文件流传输期间,Node.js会阻止并且无法处理下一个请求

来自分类Dev

Node.js异步循环,下一个循环之前从函数进行回调

来自分类Dev

如何将参数从一个异步函数传递到Node.js中的另一个函数?

来自分类Dev

为什么我不能使用Node.js和Express将数据从POST发送到下一个呈现页面上的表单?

来自分类Dev

一个控制器中的多个请求URL映射处理程序在Node Express JS中不起作用

来自分类Dev

如何将json传递给Node.js请求发布方法?

来自分类Dev

使用请求模块的Node.JS代理

来自分类Dev

如何使用请求模块 -Node js 提取来自 url 的请求的域名

来自分类Dev

如何传递一个函数作为 Node.js 中另一个函数的回调?

来自分类Dev

MongoDB + Node.js:每个请求一个集合还是一个静态集合?

来自分类Dev

将响应数据从一个 http 请求传递到下一个

Related 相关文章

  1. 1

    使用node.js测试API如何处理无效的JSON语法请求主体

  2. 2

    Node.js如何处理一个线程的同时请求?

  3. 3

    Node.js请求模块....在主体中发送JSON以使用api请求进行API请求

  4. 4

    Node.js-带“请求”模块的PUT

  5. 5

    Node.js异步系列-将参数传递给下一个回调

  6. 6

    Node.js异步循环,下一个循环之前从函数进行回调

  7. 7

    带有Express的Node.js-抛出错误与下一个错误

  8. 8

    node.js非阻塞POST请求以等待另一个POST请求

  9. 9

    在node.js中,如何从app.js中的另一个模块中的模块访问函数?

  10. 10

    函数完成后,Node.js回调下一个循环

  11. 11

    AWS步骤函数映射状态:将当前迭代的输出作为输入传递给下一个迭代

  12. 12

    Node.js:一个AWS实例或每个请求一个

  13. 13

    如何在Node.js Lambda中使用请求模块

  14. 14

    如何将POST请求主体映射到各个字段(NODE.JS)

  15. 15

    使用请求模块抓取Node.js

  16. 16

    如何将Node.js请求路由到另一个Node.js应用程序?

  17. 17

    Node.js请求模块....在主体中发送JSON以使用api请求进行API请求

  18. 18

    如何使用Node.js的“异步”模块在一个函数中执行“ A”或“ B”,然后始终执行“ C”?

  19. 19

    在ZIP文件流传输期间,Node.js会阻止并且无法处理下一个请求

  20. 20

    Node.js异步循环,下一个循环之前从函数进行回调

  21. 21

    如何将参数从一个异步函数传递到Node.js中的另一个函数?

  22. 22

    为什么我不能使用Node.js和Express将数据从POST发送到下一个呈现页面上的表单?

  23. 23

    一个控制器中的多个请求URL映射处理程序在Node Express JS中不起作用

  24. 24

    如何将json传递给Node.js请求发布方法?

  25. 25

    使用请求模块的Node.JS代理

  26. 26

    如何使用请求模块 -Node js 提取来自 url 的请求的域名

  27. 27

    如何传递一个函数作为 Node.js 中另一个函数的回调?

  28. 28

    MongoDB + Node.js:每个请求一个集合还是一个静态集合?

  29. 29

    将响应数据从一个 http 请求传递到下一个

热门标签

归档