request で取得、fs で保存してみる
バイナリを壊さないように注意する。
- request でのエンコーディング指定は {encoding: null}
- fs でのエンコーディング指定は 'binary'
package.json
{
"dependencies": {
"request": "*",
"fs": "*"
}
}
test.js
var request = require('request');
var fs = require('fs');
var url = 'https://www.google.co.jp/images/nav_logo195.png';
request(
{method: 'GET', url: url, encoding: null},
function (error, response, body){
if(!error && response.statusCode === 200){
fs.writeFileSync('a.png', body, 'binary');
}
}
);
実行
npm install
node test.js