如何使用Unirest在Nodejs中调用多个请求

时间:2015-09-20 22:58:28

标签: javascript node.js unirest

我正在使用Nodejs和Unirest并拥有以下代码:

import u from 'unirest';
    u.get(firstUrl).query(q).end(function (response) {
                            if (response.status == 200) {
                                posts = response.body;
                                console.log("Step 1");
                            } else {
                                console.log("error");
                            }
                            console.log("Step 2");
                            u.get(secondUrl).query(q).end(function (response) {
                                if (response.status == 200) {
                                   events = response.body;
                                    console.log("Step 3");
                                } else {
                                    console.log("error");
                                }
                            });
                            console.log("Step 4");
                            response.render('myPage', {
                                posts: posts, `
                                events:events
                            });
            });

第一个请求非常有效(帖子被发送到视图)但我无法从视图中获取事件。 在我的终端,我有:

Step 1
Step 2
Step 4
Step 3

在呈现“myPage”之前,您可以帮助我同时获取帖子事件。感谢您的宝贵帮助。

1 个答案:

答案 0 :(得分:1)

我建议你研究承诺,你会更好地了解这个流程。

但是这样会起作用;)

import u from 'unirest';
u.get(firstUrl).query(q).end(function (response) {
                        if (response.status == 200) {
                            posts = response.body;
                            console.log("Step 1");
                        } else {
                            console.log("error");
                        }
                        console.log("Step 2");
                        u.get(secondUrl).query(q).end(function (response) {
                            if (response.status == 200) {
                               events = response.body;
                                console.log("Step 3");

                            } else {
                                console.log("error");
                            }

                            console.log("Step 4");
                            response.render('myPage', {
                                posts: posts, `
                                events:events
                            });
                        });

        });