Skip to content

singleDownloadFile 下载单个文件

function singleDownloadFile(source: string, fileName?: string, pathQuery?: Record<string, string>): Promise<void>

下载单个文件。source 支持 Base64 字符串或 HTTP/HTTPS URL;不同来源会使用不同下载策略。

参数

参数名说明类型默认值
source下载源,支持 Base64 字符串或 URLstring必填
fileName保存文件名;Base64 下载时必填stringundefined
pathQuery文件 URL 下载时追加的查询参数Record<string, string>{ 'response-content-type': 'application/octet-stream' }

返回值

返回值说明类型
promise下载触发完成后 resolve 的 PromisePromise<void>

示例

typescript
import { singleDownloadFile } from '@mingto/tools'

await singleDownloadFile('https://example.com/report.pdf')

await singleDownloadFile('SGVsbG8=', 'hello.txt')

await singleDownloadFile('https://example.com/report.pdf', 'custom.pdf', {
  token: 'abc',
})

注意事项

  • Base64 下载未传 fileName 时会抛出错误。
  • 有效文件 URL 会通过 axios 请求 Blob 后使用 file-saver 保存。
  • 非文件路径 URL 会创建隐藏 <a> 标签并触发点击。