前言
Request是Node.js中的一個(gè)模塊,目標(biāo)是用最可能簡(jiǎn)單的方式,在Node.js發(fā)起HTTP請(qǐng)求。此外也支持最新的HTTPS協(xié)議。詳細(xì)的教程的可以參考官網(wǎng)(傳送門)。本文并不打算翻譯官方教程,只是簡(jiǎn)單介紹入門使用方法。
安裝和配置Request
對(duì)于npm模塊安裝,對(duì)于使用過(guò)的讀者自然熟練掌握。用cmd在項(xiàng)目路徑中,使用指令npm install --save request來(lái)安裝模塊,然后使用var request = require('request')完成引用。
GET請(qǐng)求
對(duì)于GET請(qǐng)求,主要是獲取目的url中數(shù)據(jù)。最終的數(shù)據(jù)保存在回調(diào)函數(shù)的body字段中。如果請(qǐng)求正確,則可以將數(shù)據(jù)進(jìn)行輸出。其中請(qǐng)求中的json字段,表示為輸出的數(shù)據(jù)格式為json。
request.get(
url, {
json: {
key: 'value'
}
},function (err, httpResponse, body) {
if (!err && httpResponse.statusCode === 200) {
console.log(body);
}
}
)
POST請(qǐng)求
對(duì)于post請(qǐng)求,主要是將數(shù)據(jù)上傳到目標(biāo)url上。在request模塊中,有專門的body字段來(lái)保存數(shù)據(jù),具體的用法可以看下面的例子。
var request = require('request')
request.post({
body: postData, // 需要post的數(shù)據(jù)
json: true, //數(shù)據(jù)的格式
url: url, //請(qǐng)求的URL
headers: {
//特殊的headers,如果需要
}
}, function (err, httpResponse, body) {
if (err) {
console.log('Error :', err)
return
}
console.log(' Body :', body)
});