前言
使用nodejs下载文件的的方法
内容
request
const fs = require('fs') const request = require('request') /** * 下载文件并写入本地磁盘 * @param fileLink 文件URL地址 * @param filePath 文件路径,如: c:xx/xx.jpg */ export function getFile(fileLink, filePath){ if (fileLink??'' !== '') { return new Promise(resolve => { request({ url: fileLink, method: 'GET', // 根据实际情况改变请求方式 encoding: null }, (err, response, body) => { if (!err && response.statusCode === 200) { fs.writeFileSync(filePath, body, {encoding: "binary"}) resolve(filePath) } else { reject(err) } }) }) } }
pipe
const fs = require('fs') const request = require('request') /** * 下载文件并写入本地磁盘 * @param uri 文件URL地址 * @param filePath 文件路径,如: c:xx/xx.jpg * @param callback 回调 */ export function getFile(uri, filePath, callback){ if (uri??'' !== '') { request(uri).pipe(fs.createWriteStream(filePath)).on('close', () => { callback(filePath) }) } }
学无止境,谦卑而行.