最近在使用360浏览器进行开发时,遇到了一个问题:在访问接口后,得到的返回是json格式的数据,但是想要以文件的形式打开。这时候,我们可以使用下面的代码,将返回的json数据处理成文件并下载到本地。
function exportJsonFile(fileName,json) { let blob = new Blob([JSON.stringify(json)],{ type: 'application/json' }); let objectUrl = URL.createObjectURL(blob); let a = document.createElement('a'); a.href = objectUrl; a.download = fileName + '.json'; a.click(); };
代码很简单,我们首先将json数据转换成blob对象,然后创建一个a标签,将blob对象的地址赋值给a标签的href属性,设置下载文件的文件名并触发下载操作。
let json = { "name": "Tom","age": 20 }; exportJsonFile('person',json);