2014-03-26 30 views
1

對於我的應用程序,我需要從另一個api端點讀取,比如說facebook。這就是我現在所做的:在Node.js中mikeal的請求和http/https模塊之間的比較

var https=require('https'); 
var querystring=require('querystring'); 
var _my_lat=37.78583526611328; 
var _my_lng=122.40641784667969; 
var _my_fb_access_token ='somebigvaluefromfacebook'; 
var params = { 
     type: 'place', 
     center: _my_lat+','+_my_lng, 
     access_token: _my_fb_access_token 
}; 
var url = 'https://graph.facebook.com/search?'+querystring.stringify(params); 
https.get(url, function(res) { 
    var msg = ''; 
    res.on('data', function(chunk) { 
     msg+=chunk; 
    }); 
    res.on('end', function() { 
     var v = JSON.parse(msg); 
     //do stuff with v 
    }); 
}).on('error', function(e) { 
    //do stuff with e 
}); 

但是,最近我發現這一點:https://github.com/mikeal/request並從鏈接下面的例子是:

var request = require('request'); 
request('http://www.google.com', function (error, response, body) { 
    if (!error && response.statusCode == 200) { 
    console.log(body) // Print the google web page. 
    } 
}) 

我是新來的Node.js,但是我做不到找出哪一個更適合我的目的。

回答

4

邁克爾羅傑斯的Request模塊,正如他在網站上所述,「設計成可能的最簡單的方式來進行http調用」。如果您需要的是一種與遠程REST API進行交互的簡單方法,那麼這是一個很好的方法。如果您需要處理較低級別的HTTP請求(例如,如果需要偵聽HTTP升級請求),則您需要使用Node的本地HTTP模塊。

你的Facebook代碼是一個很好的例子,它可以讓請求模塊更加簡單!基本上可以用你的Facebook Graph API URL替換你的Google示例中的URL並從那裏開始。

相關問題