nodejs axios 下载文件

冷暖自知 提交于 2020-02-25 16:01:00

用nodejs下载一张图片

分别使用流式和arraybuffer两种方式下载成功, 个人偏爱arraybuffer

 

流式下载

const axios = require('axios')
const fs = require('fs')

let url = 'https://gss0.baidu.com/94o3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/314e251f95cad1c83f06dc11733e6709c93d5142.jpg'
axios({
  url,
  responseType: 'stream'
}).then(
  (resp) => {
    const writer = fs.createWriteStream('./t2.jpg')
    resp.data.pipe(writer)
    writer.on('finish', () => {
      console.log('finish')
    })
    writer.on('error', () => {
      console.log('error')
    })
  }
)

 

arraybuffer

const axios = require('axios')
const fs = require('fs')

let url = 'https://gss0.baidu.com/94o3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/314e251f95cad1c83f06dc11733e6709c93d5142.jpg'
axios({
  url,
  responseType: 'arraybuffer'
}).then(
  ({data}) => {
    fs.writeFileSync('./t.jpg', data, 'binary')
  }
)

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!