欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

node+axios實(shí)現(xiàn)下載外網(wǎng)文件到本地

 更新時(shí)間:2022年06月28日 08:46:42   作者:天問(wèn)  
這篇文章主要為大家介紹了node+axios實(shí)現(xiàn)下載外網(wǎng)文件到本地示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

作為一個(gè)web前端開(kāi)發(fā),對(duì)axios肯定不陌生,但是在前端開(kāi)發(fā)中,一般是使用axios來(lái)請(qǐng)求后端接口,獲取數(shù)據(jù)。而使用node+axios下載網(wǎng)絡(luò)文件到本地磁盤(pán)可能很少接觸,搜索了很多相關(guān)的博客文章,講解的好像都不夠清晰明了,所以本文就記錄一下實(shí)踐方法。

初始化項(xiàng)目

npm init -y

安裝axios

 npm i -S axios

實(shí)現(xiàn)邏輯

根目錄下新建app.js

// app.js
const axios = require('axios');
const fs = require('fs');

async function loadImg(imgUrl) {
  let { data } = await axios({
    url: imgUrl,
    headers: {
      'Content-Type': 'multipart/form-data',
    },
    responseType: 'arraybuffer',
  })
  await fs.promises.writeFile(`./01.jpg`, data, 'binary');
}

;(async function () {
  let url = 'https://tiven.cn/static/img/img-post-08-c1kr9HQ13lTEmcyI_mowX.jpg'
  console.time('download time:')
  try {
    await loadImg(url)
    console.log('下載成功')
  } catch (err) {
    console.log(err)
  }
  console.log('')
  console.timeEnd('download time:')
})();

說(shuō)明:

axios 的參數(shù) headers 中 Content-Type默認(rèn)是application/json,需要設(shè)置為 multipart/form-data;

responseType默認(rèn)是json,需要設(shè)置為arraybuffer(二進(jìn)制格式);

writeFile方法的第三個(gè)參數(shù)encoding默認(rèn)是utf8,必須設(shè)置為binary(二進(jìn)制格式),如果不設(shè)置,下載的文件打不開(kāi)。

console.timeconsole.timeEnd是node中提供的計(jì)時(shí)方法。

執(zhí)行

node app.js

輸出

下載成功
download time:107.866ms

如果想要批量爬取某個(gè)網(wǎng)站的圖片或其他文件,可以使用node爬蟲(chóng)工具cheerio來(lái)實(shí)現(xiàn)。

參考文檔

http://nodejs.cn/api/fs.html#fs_fs_writefile_file_data_options_callback

http://www.axios-js.com/docs/#Request-Config

以上就是node+axios實(shí)現(xiàn)下載外網(wǎng)文件到本地的詳細(xì)內(nèi)容,更多關(guān)于node axios下載外網(wǎng)文件到本地的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 充分發(fā)揮Node.js程序性能的一些方法介紹

    充分發(fā)揮Node.js程序性能的一些方法介紹

    這篇文章主要介紹了充分發(fā)揮Node.js程序性能的一些方法介紹,Node.js是把JavaScript用于服務(wù)器端的框架,需要的朋友可以參考下
    2015-06-06
  • node-sass安裝失敗解決方法總結(jié)(終有一款適合你)

    node-sass安裝失敗解決方法總結(jié)(終有一款適合你)

    node-sass是我們開(kāi)發(fā)中很常見(jiàn)的依賴(lài)包,也是安裝時(shí)間冗長(zhǎng)和最常見(jiàn)到報(bào)錯(cuò)的依賴(lài),下面這篇文章主要給大家介紹了關(guān)于node-sass安裝失敗解決方法的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • pm2啟動(dòng)ssr失敗的解決方法

    pm2啟動(dòng)ssr失敗的解決方法

    這篇文章主要介紹了pm2啟動(dòng)ssr失敗的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-06-06
  • nodejs結(jié)合Socket.IO實(shí)現(xiàn)websocket即時(shí)通訊

    nodejs結(jié)合Socket.IO實(shí)現(xiàn)websocket即時(shí)通訊

    websocket 是一種網(wǎng)絡(luò)通信協(xié)議,一般用來(lái)進(jìn)行實(shí)時(shí)通信會(huì)使用到。本文主要介紹了nodejs結(jié)合Socket.IO實(shí)現(xiàn)websocket即時(shí)通訊 ,感興趣的可以了解一下
    2021-11-11
  • Node中對(duì)非阻塞I/O、事件循環(huán)的知識(shí)點(diǎn)總結(jié)

    Node中對(duì)非阻塞I/O、事件循環(huán)的知識(shí)點(diǎn)總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于Node中對(duì)非阻塞I/O、事件循環(huán)的知識(shí)點(diǎn)分享內(nèi)容,需要的朋友們可以參考下。
    2020-01-01
  • node.js中express模塊創(chuàng)建服務(wù)器和http模塊客戶(hù)端發(fā)請(qǐng)求

    node.js中express模塊創(chuàng)建服務(wù)器和http模塊客戶(hù)端發(fā)請(qǐng)求

    今天小編就為大家分享一篇關(guān)于node.js中express模塊創(chuàng)建服務(wù)器和http模塊客戶(hù)端發(fā)請(qǐng)求,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 關(guān)于在mongoose中填充外鍵的方法詳解

    關(guān)于在mongoose中填充外鍵的方法詳解

    在學(xué)習(xí)非關(guān)系型數(shù)據(jù)庫(kù)mongoDB,希望能夠完成數(shù)據(jù)庫(kù)的CRUD,采用的是JS做的后臺(tái),因此用到了mongoose,下面這篇文章主要給大家介紹了關(guān)于在mongoose中填充外鍵的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-08-08
  • 解決node.js安裝包失敗的幾種方法

    解決node.js安裝包失敗的幾種方法

    nodejs安裝包失敗的原因可能有很多,下面這篇文章給大家整理三種方法來(lái)解決,大家可以試一試或許可以解決你的問(wèn)題,下面來(lái)一起看一看。
    2016-09-09
  • koa2服務(wù)配置SSL的實(shí)現(xiàn)方法

    koa2服務(wù)配置SSL的實(shí)現(xiàn)方法

    這篇文章主要介紹了koa2服務(wù)配置SSL的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • nodejs構(gòu)建本地web測(cè)試服務(wù)器 如何解決訪(fǎng)問(wèn)靜態(tài)資源問(wèn)題

    nodejs構(gòu)建本地web測(cè)試服務(wù)器 如何解決訪(fǎng)問(wèn)靜態(tài)資源問(wèn)題

    這篇文章主要為大家詳細(xì)介紹了nodejs構(gòu)建本地web測(cè)試服務(wù)器,教大家如何解決訪(fǎng)問(wèn)靜態(tài)資源問(wèn)題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07

最新評(píng)論