2017-09-04 23 views
0

通常在angular.js中,我習慣於使用Web服務GET,其中我傳遞了2個參數,如下所示。在nodejs中使用web服務

$http.get('https://maps.googleapis.com/maps/api/geocode/json?latlng='+tweet.lat+','+tweet.long+'&key=AIzaSyBZVOSPh0Z4mv9jljJWzZNSug6upuec7Sg') 
.then(function(result){ 

    }, function(error){ 

    } 

如何直接在nodejs中得到相同的結果?非常感謝你。

回答

1

有幾種方法可以做到這一點。很多人使用request模塊,這使得事情一樣的角度:

你需要安裝請求(https://www.npmjs.com/package/request)有:

npm install request 

然後:

var request = require('request'); 
request(url, function (error, response, body) { 
    // do stuff with response & body. 
}); 

如果您需要承諾,那麼在npm(https://www.npmjs.com/package/request-promise)上也有一個請求承諾模塊。

npm install --save request 
npm install --save request-promise 

您需要在此情況下,兩個requestrequest-promise

var request = require('request-promise'); 

request(url) 
.then(function (result) { 
    // do stuff with result 
}) 
.catch(function (err) { 
    //error 
}); 

您也可以使用http模塊內置到節點,但隨後你需要自己管理數據流。

+0

當你談到承諾時,你的意思是.then()。?如果你的答案是肯定的,我想用諾言來做。 – yavg

+0

是的,@yavg,.then()是一個promise函數。我更新了答案,但它基本上是從請求承諾文檔複製並粘貼的。 –

+0

htmlString是請願網站的答案嗎? – yavg