什么情况下axios需要设置responseType: ‘blob‘

  • 下载文件: 如果接口返回的是需要下载的文件(如 PDF、图片、音频、视频等二进制文件),设置 responseType: 'blob' 可以让 Axios 将返回的数据处理为二进制 Blob 格式,而不是默认的字符串格式。例如:

    • PDF 文件 (application/pdf)。

    • 图片文件 (image/png, image/jpeg)。

    • Excel 或 Word 文件 (application/vnd.ms-excel, application/msword 等)。

  • 处理二进制数据: 如果你需要对返回的二进制流进行操作,比如将其渲染到页面或保存为本地文件,Blob 格式是更合适的,因为它更接近实际的二进制内容。

  • 防止字符串解析错误: 如果后端返回的是二进制数据而 Axios 默认将其解析为字符串,这可能会导致数据的损坏或者难以处理。通过设置 responseType: 'blob',可以避免这种问题。

  • 确保数据完整性: Blob 对象与文件流更接近,因此它能更好地保留数据的原始状态,尤其是在传输压缩数据或大型文件时。

你可能感兴趣的:(axios)