node訪問某個ip下的某個server
阿新 • • 發佈:2018-12-23
看前人的專案,實現的是一個訪問某個ip的某個server的功能,他們用了privoxy和node來實現的,如果純用node的話,可以使用http.request方法,這樣就不用安裝別的東西了。
下面的這個就是訪問127.0.0.1上的abc.com的一個demo。
let querystring=require('querystring')
let http=require('http');
const postData = querystring.stringify({
'msg' : 'Hello World!'
});
const options = {
hostname : '127.0.0.1',
port: 80,
path: '/getabc?id=311',
method: 'GET',
headers: {
"Host":'abc.com'
}
};
const req = http.request(options, (res) => {
console.log(`狀態碼: ${res.statusCode}`);
console.log(`響應頭: ${JSON.stringify(res.headers)}`);
res.setEncoding('utf8');
res.on ('data', (chunk) => {
console.log(`響應主體: ${chunk}`);
});
res.on('end', () => {
console.log('響應中已無資料。');
});
});
req.on('error', (e) => {
console.error(`請求遇到問題: ${e.message}`);
});
// 寫入資料到請求主體
req.write(postData);
req.end();