Vue:如何实现日志导出下载功能?

提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。
提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。
提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。

文章目录


1.后端接口返回数据示例

javascript 复制代码
{
       "status": 0,
       "data": {
               "file_url": "http://test//tmp/log.bin"
       }
}

提示:基于类似上述文件地址 实现导出下载功能


2.关键代码

html 复制代码
  <button @click="exportLog()">导出</button >
javascript 复制代码
        exportLog(){
            logApi().then((res) => {
                if (res.status == 0) {
                    const now = new Date();
                    const year = now.getFullYear();
                    const month = ('0' + (now.getMonth() + 1)).slice(-2);
                    const day = ('0' + now.getDate()).slice(-2);
                    const hours = ('0' + now.getHours()).slice(-2);
                    const minutes = ('0' + now.getMinutes()).slice(-2);
                    const seconds = ('0' + now.getSeconds()).slice(-2);

                    const formattedTime = year + month + day + hours + minutes + seconds;
                    const link = document.createElement('a');
                    const blob = new Blob([res.data.file_url]);
                    link.style.display = 'none'
                    link.href = URL.createObjectURL(blob)
                    link.setAttribute('download', 'config_'+formattedTime+'.bin')
                    //setAttribute,第二个参数是定义导出文件的名称。
                    document.body.appendChild(link)
                    link.click()
                    document.body.removeChild(link)
                }
            });
		},
相关推荐
海兰6 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
小磊哥er8 小时前
深入解构Claude Code - 第 7 篇 · 连接外面的世界
javascript·ai编程
小磊哥er8 小时前
深入解构Claude Code - 第 6 篇 · 终端里的图形界面
javascript·ai编程
海兰8 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(一)
javascript·python·金融
可乐鸡翅yeah_10 小时前
hls.js 内存泄漏实战排查,直播 M3U8 长时间播放异常定位方案
开发语言·javascript·python·django·ecmascript·m3u8·m3u8在线
可乐鸡翅yeah_10 小时前
第三方接口对接 M3U8 流媒体排坑实战,解决外部服务商流兼容难题
前端·javascript·python·django·html·m3u8·m3u8在线
默_笙10 小时前
🏠 「LLM Notes」:我用 Next.js + Redis 给自己造了个笔记博客
前端·javascript
ruanCat12 小时前
Prettier 明明执行成功,Markdown 为什么还是没变?一次插件误诊复盘
前端·javascript·node.js
软件开发技术深度爱好者12 小时前
在线学习实践 TypeScript 的官方Playground(演练场)使用介绍
javascript·学习·typescript
2601_9621229713 小时前
nginx 部署前端vue项目
前端·vue.js·nginx