JS Blob 下载时导出csv,通过excel软件打开中文乱码的问题:

发布时间 2023-09-08 14:07:41作者: 努力不搬砖的iori

proxy.$http.post(url, commitObject.value, { headers: { responseType: 'blob' } }).then((p) => {
if (p.data.code == 200 || p.status == 200) {
ElMessage.success('预测成功,等待结果展示!')
if (commitObject.value.returnType == 'file') {
let data = "\ufeff" + p.data
// 前面加上这个 "\ufeff" 就不乱码了 
console.log(data)
const a = document.createElement("a")
const blob = new Blob([data], { type: 'text/csv,charset=UTF-8'})

 

【{ headers: { responseType: 'blob' }   这个请求头也挺重要的, 有时候后台返回的数据打印就是一串字符串而不是 Blob的数据, 很多时候就是没有加上这个请求头的原因