apiService.downloadFile(fileUrl)怎么实现
时间: 2024-04-06 19:28:48 浏览: 47
实现 `apiService.downloadFile(fileUrl)` 这个函数可以遵循以下步骤:
1. 创建一个 HTTP GET 请求,请求 `fileUrl` 指定的文件资源;
2. 在请求头中添加 `Content-Type: application/octet-stream`,指定响应数据为二进制流;
3. 将响应数据写入一个文件中,文件名可以从 `fileUrl` 中解析出来或者由调用者传入。
以下是一个 Node.js 示例代码:
```javascript
const http = require('http');
const fs = require('fs');
function downloadFile(fileUrl, outputFile, callback) {
const options = {
headers: {
'Content-Type': 'application/octet-stream'
}
};
http.get(fileUrl, options, res => {
res.pipe(fs.createWriteStream(outputFile))
.on('finish', callback);
});
}
// 示例用法
downloadFile('http://example.com/file.zip', 'file.zip', () => {
console.log('文件下载完成');
});
```
上面的代码中,`downloadFile()` 函数接受三个参数:
- `fileUrl`:要下载的文件的 URL;
- `outputFile`:要保存到的本地文件名;
- `callback`:下载完成后的回调函数。
阅读全文