簡體   English   中英

如何從http.get方法Node.js訪問數據

[英]How to access data from http.get method nodejs

我對外部api有一個簡單的http.get請求。 如何從另一個函數訪問id和name變量? 謝謝!

 app.use(function *(next){ var name = ''; var id = ''; var options = { host: 'www.website.com', path: '/json/somedata', metohd: 'GET' }; http.get(options, function(res) { var body = ''; res.on('data', function(chunk) { body+=chunk; console.log(body); }) res.on('end', function() { var parsed = JSON.parse(body); id = parsed.id; name = parsed.name; }) }) }); 

我猜您正在使用npm模塊express,以及那里的語法。

您的答案取決於您要在哪里使用ID和名稱。 如果要之后在路由或中間件中使用它,解決該問題的一種常用方法是將屬性(在本例中為name和id)附加到請求中。 切記在完成后再打電話,否則快遞將不知道您已完成所有處理

我在下面給出了一個簡單的例子:

app.use(function (req, res, next){

   var options = {
       host: 'www.website.com',
       path: '/json/somedata',
       method: 'GET'
   };
   http.get(options, function(getResponse) {

    var body = '';

    getResponse.on('data', function(chunk) {
        body+=chunk;
        console.log(body);
    })
    getResponse.on('end', function() {
        var parsed = JSON.parse(body);
        req.id = parsed.id;
        req.name = parsed.name;
        next();

    })
    })
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM