当前位置: 首页 > java >正文

【前端】接口日志追踪

1. 问题描述

  • 场景:前端提交数据后,接口回调再次添加参数,但页面跳转/刷新导致之前的 console.log 数据丢失。
  • 影响:无法追踪完整的请求流程,调试困难。

2. 环境信息

项目说明
浏览器Google Chrome 120+
开发者工具Chrome DevTools
技术栈前端:Vue/React/其他
接口类型RESTful API / GraphQL

3. 解决方案

3.1 保留控制台日志(推荐)

步骤

  1. 打开 Chrome 开发者工具(F12Ctrl+Shift+I)。
  2. 切换到 Console 选项卡。
  3. 勾选 Preserve log 复选框。

在这里插入图片描述

(截图示意:红框标注勾选项)

效果:页面跳转后,历史日志仍可查看。


3.2 网络请求追踪

步骤

  1. 在开发者工具中切换到 Network 选项卡。
  2. 勾选 Preserve log
  3. 筛选请求类型(如 XHRFetch)。
  4. 点击对应请求,查看 HeadersRequest PayloadResponse

关键字段

Request URL: /api/submit
Request Method: POST
Payload: { "param1": "value1", "param2": "value2" }

3.3 代码层增强日志

方案1:使用 localStorage 持久化
// 提交时保存数据
function submit(data) {console.log("提交数据:", data);localStorage.setItem("lastSubmitData", JSON.stringify(data));
}// 回调时读取
function callback() {const lastData = JSON.parse(localStorage.getItem("lastSubmitData"));console.log("上次提交数据:", lastData);
}
方案2:历史记录数组
const requestHistory = [];function submit(data) {requestHistory.push(data);console.log("历史请求:", requestHistory);
}

3.4 高级调试工具

工具用途链接
Chrome DevTools实时调试、性能分析官方文档
LogRocket录屏+日志重现用户操作官网
Sentry错误监控与请求追踪官网

4. 验证步骤

  1. 测试 Preserve log
    • 提交数据 → 触发回调 → 检查控制台是否保留日志。
  2. 检查 Network 请求
    • 确认两次请求参数是否按预期发送。
  3. 验证存储数据
    • 检查 localStoragesessionStorage 中是否存有历史数据。

5. 附录

常见问题

  • Q: 勾选 Preserve log 后日志仍丢失?
    A: 可能被代码中的 console.clear() 清除,需检查代码逻辑。

  • Q: 如何导出控制台日志?
    A: 右键控制台 → Save as… 或使用扩展程序(如 Console Export)。


6. 参考资源

  • Chrome DevTools 官方文档
  • MDN - Console API
http://www.xdnf.cn/news/14993.html

相关文章:

  • OKR工作法
  • x86汇编语言入门基础(三)汇编指令篇3 位移运算
  • Matplotlib-绘制训练曲线指南
  • defer学习指南
  • 黑搜小知识 | DNS域名解析过程是什么样的?
  • 【Modern C++ Part8】Prefer-nullptr-to-0-and-NULL
  • 深度学习12(卷积神经网络)
  • Token 和 Embedding的关系
  • 模型内部进行特征提取时,除了“减法”之外,还有哪些技术
  • SpringCloud系列 - xxl-job 分布式任务调度 (七)
  • Using Spring for Apache Pulsar:Publishing and Consuming Partitioned Topics
  • swiglu 激活函数学习笔记
  • Rust与Cypress应用
  • 技术支持丨解决 ServBay 在 Windows 启动时反复提示安装 .NET 的问题
  • Flask3.1打造极简CMS系统
  • leetcode11.盛最多水的容器
  • 微信小程序91~100
  • STM32-待机唤醒实验
  • 搭建一款结合传统黄历功能的日历小程序
  • S7-200 SMART :通过以太网下载程序详细步骤
  • ServBay Windows 1.2.0 更新!新增 PHP 设置与 Ollama 支持
  • Docker 高级管理 -- 容器通信技术与数据持久化
  • 人工智能-基础篇-27-模型上下文协议--MCP到底怎么理解?对比HTTP的区别?
  • 如何卸载本机的node.js
  • 【视频观看系统】- 需求分析
  • 沃丰科技海外客服系统综合解决方案
  • 【DB2】load报错SQL3501W、SQL3109N、SQL2036N
  • 持续更新!国内免费使用 claude code 方案
  • LLaMA-Omni 深度解析:打开通往无缝人机语音交互的大门
  • C++学习笔记三