axios.get('http://8.142.18203.svg', {
responseType: 'blob'
}).then(r => {
console.log(r);
const link = document.createElement('a');
let blob = new Blob([r.data], { type: 'application/json' })
link.style.display = 'none'
link.href = URL.createObjectURL(blob)
link.download = '文件名.svg';
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
})
下载svg直接打开看图
axios.get('http://8.142.18203.svg', {
//responseType: 'blob'
}).then(r => {
console.log(r);
const link = document.createElement('a');
let blob = new Blob([r.data.data], { type: 'image/svg+xml' })
link.style.display = 'none'
link.href = URL.createObjectURL(blob)
link.download = '文件名.svg';
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
})
第二个这个 不要 responseType blob 正常请求 然后 下面用r.data.data 就是那个xml string, type 设置成image/svg+xml,如果只是想看 那就推荐第二种,如果是要编辑这个json 那就第一种, 但是你可以说一下 原来svg 就是个json 文件, 下载时候 名为.json 会好一些, 原因是 .svg 浏览器能识别, 默认是浏览器打开, 但是里面还不是svg 的东西 所以是报错, 还是得记事本之类的打开