Node.js 文件流转文件内容 - 使用 axios 和 fs 模块
使用 Node.js 的 fs 模块可以将接口获取的文件流变成文件。下面是一个示例代码:\n\njavascript\nconst fs = require('fs');\nconst axios = require('axios');\n\nasync function downloadFile(url, filePath) {\n const writer = fs.createWriteStream(filePath);\n\n const response = await axios({\n url,\n method: 'GET',\n responseType: 'stream'\n });\n\n response.data.pipe(writer);\n\n return new Promise((resolve, reject) => {\n writer.on('finish', resolve);\n writer.on('error', reject);\n });\n}\n\nconst fileUrl = 'https://example.com/file.txt';\nconst filePath = 'path/to/save/file.txt';\n\ndownloadFile(fileUrl, filePath)\n .then(() => {\n console.log('File downloaded successfully');\n })\n .catch(error => {\n console.error('Error downloading file:', error);\n });\n\n\n在上面的代码中,downloadFile函数接受文件的URL和要保存文件的路径作为参数。它使用axios库发送GET请求,并将响应的数据流(pipe)到fs.createWriteStream()函数创建的写入流(writer)中。当数据流写入完成时,finish事件将被触发,该函数返回一个Promise以便可以使用.then()和.catch()进行异步处理。\n\n请确保已经安装了axios和fs模块(可以使用npm install axios和npm install fs命令进行安装)。
原文地址: https://www.cveoy.top/t/topic/pwGK 著作权归作者所有。请勿转载和采集!