浏览器F12调试

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 系列文章目录
  • 1 浏览器F12开发者工具
    • 1.1 F12开发者工具基本介绍
    • 1.2 F12常规设置
  • 2 标签页
    • 2.1 Elements 查看器
    • 2.2 Network 网络
    • 2.3 Network抓包分析
      • 案例1: 以登录百度账号为例
      • 案例2: 登录账号
      • 案例3: 问题定位分析
      • 如何定位前端问题和后端问题?
    • 2.4 接口测试和数据篡改
    • 2.5 和postman、jmeter等工具的结合使用
    • 2.6 Recorder 记录器
    • 2.7 Application 应用
      • 存储
      • cookies
    • 2.8 Console 控制台
    • 2.9 Performance 性能
    • 2.10 小结


1 浏览器F12开发者工具

1.1 F12开发者工具基本介绍

在这里插入图片描述

1.2 F12常规设置

1)显示的位置调整:靠右靠左靠下独立窗口
在这里插入图片描述
2)设置颜色和语言(chrome)
在这里插入图片描述

3)手机版本的切换,适合测试H5页面小程序测试,可以方便在电脑操作和调试;也可以选择尺寸和不同的手机型号
在这里插入图片描述

2 标签页

在这里插入图片描述

英文中文
Elements查看器
Console控制台
Sourse源代码/调试器
Network网络
Performance性能
Memory内存
Application应用
Recorder记录器
Performance insights性能数据分析
  • 查看器:主要用来做元素的定位

  • 控制台:调试错误等

  • 源代码:前端代码的调试,断点等

  • 网络:测试用来抓包、进行分析进行一些测试问题的定位

  • 性能:前端页面的性能

  • 应用:存储cookie缓存等

2.1 Elements 查看器

在这里插入图片描述
在这里插入图片描述
1.查看元素的代码
点击左上角的箭头图标(或按快捷键Ctrl+Shft+C)进入选择元素模式,然后从页面中选择需要查看的元素,然后可以在开发者工具元素(Elements) -栏中定位到该元素源代码的具体位置。
在这里插入图片描述
2.查看元素的属性
定位到元素的源代码之后,可以从源代码中读出该元素的属性。如class、 src、 width等属性的值。
3.修改元素的代码与属性

  • 点击元素,然查看右键菜单,可以看到chrome提供的可对元素进行的操作:选择Edit as
    HTML选项时,元索进入编辑模式,可以对元素的代码进行任意的修改
  • 当然,这个修改也仅对当前的页面渲染生效,不会修改服务器的源代码,所以这个功能也是作为调试页面效果而使用。

在这里插入图片描述
结果如下:
在这里插入图片描述

2.2 Network 网络

在这里插入图片描述

网络协议–01–HTTP协议
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.3 Network抓包分析

案例1: 以登录百度账号为例

在这里插入图片描述
双击查看详细报文消息内容:
在这里插入图片描述

标头(消息头):

  • 常规(请求网址、请求方法、状态代码)
  • 响应头
  • 请求头
    在这里插入图片描述

载荷(请求体):

可看到登录输入的手机号和验证码
在这里插入图片描述

响应(响应体)

在这里插入图片描述

时间

在这里插入图片描述

cookie:

在这里插入图片描述

案例2: 登录账号

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

案例3: 问题定位分析

抓不到登录的这个post请求:

  • 保留日志:开启后,重新加载url,或者跳转了页面之后,之前的请求显示资源信息依然会保留下来,不会清空;
  • 停用缓存:开启后,页面资源不会存入缓存,可以在status栏的状态码看文件请求状态。
    在这里插入图片描述
  • 输入账号提示“账号不存在”,如果没抓到包,证明是前端页面给出的提示
  • 抓到POST请求的包了,证明是后端返回的提示
    在这里插入图片描述
    在这里插入图片描述

如何定位前端问题和后端问题?

步骤:
1.明显的前端js问题
在这里插入图片描述
2.抓包分析:
1)前端没有发送请求 --前端问题
2)前端发送请求了,但是前端发送内容的数据错误 --前端问题
3)前端发送了正确请求,后端没有给响应消息 --后端问题
4)前端发送了正确请求,后端也响应消息了,但是响应的数据错误 --后端问题
5)前端发送了正确请求,后端给出了正确响应,但前端没有正确显示 --前端问题
有时需要配合数据库确认+Linux服务器分析项目日志

2.4 接口测试和数据篡改

接口测试(数据篡改) :(以谷歌浏览器为例)
右键后点击复制,以fetch格式复制,粘贴到控制台

  1. 可以修改捕获到的请求的数据(参数),对接口的正常数据+异常数据进行测试。
  2. 回车发送接口请求
  3. 检查响应结果
    在这里插入图片描述
    可修改请求体的数据或参数(例如将用户名输入错误),回车键发送请求:
    在这里插入图片描述
    检查响应结果:
    在这里插入图片描述

使用场景: 前端检查了一些异常数据报错,接口层面是否也有检测这种异常数据的能力呢?所以要对接口进行这些异常数据的测试检查。

2.5 和postman、jmeter等工具的结合使用

复制为curl命令(linux)可以在postman里粘贴使用–import里进行粘贴
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

复制为HAR格式/所有内容保存为HAR模式,可以导入到其他工具使用,比如Metersphere工具
导入HAR文件:

F12可以导入其他工具导出的HAR文件。

  • 测试:HAR文件导出 给到开发进行问题的定位! --问题复现 修复bug

在这里插入图片描述

2.6 Recorder 记录器

录制按钮- -chrome 98版本后才有的功能

录制脚本的用途(导入和导出):
测试的时候一些重复性的工作可以录制下来进行回放;也可以保存后导入进行repaly (重放)。

  1. 录制并进行replay
  2. 导出给开发进行replay复现bug
  3. 导入进行replay
  4. 还可以进入分析性能页面

注意:功能还是试用性功能,还在完善中,大家选择进行使用!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.7 Application 应用

存储

在这里插入图片描述
在这里插入图片描述

cookies

在这里插入图片描述

cookies用户鉴权:

  1. 登录一次过后用户的一些信息保存到服务器里,以session的形式,也就是会话,服务器这边的会话也有一定的时效
  2. 服务器会把session的一些信息通过set cookies字段发送给客服端
  3. 客户端保存到浏览器里面,也就是以cookies的形式保存。 --和session配套使用。
    在这里插入图片描述

2.8 Console 控制台

在这里插入图片描述
在这里插入图片描述
1)执行js语句
在这里插入图片描述
2)查看cookies信息
查看当前网站的cookie
在这里插入图片描述
设置cookie值
例如:

document.cookie = "csrf_token=12435332355"

2.9 Performance 性能

在这里插入图片描述
案例:

  • 点击●可以开始录制, 它会记录用户的交互以及这些交互对页面性能数据的影响,当交互完成后,
  • 点击Stop来停止Record ,Performance面板会展示出刚才录制的页面性能数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.10 小结

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/254426.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序(三十八)滚动容器

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.滚动触底事件 2.下拉刷新事件 源码&#xff1a; index.wxml <view class"Area"> <!-- scroll-y 垂直滚动refresher-enabled 允许刷新bindrefresherrefresh 绑定刷新作用函数bindscrollto…

百家cms代审

环境搭建 源码链接如下所示 https://gitee.com/openbaijia/baijiacms 安装至本地后 直接解压到phpstudy的www目录下即可 接下来去创建一个数据库用于存储CMS信息。&#xff08;在Mysql命令行中执行&#xff09; 接下来访问CMS&#xff0c;会默认跳转至安装界面 数据库名称和…

C++算法之双指针、BFS和图论

一、双指针 1.AcWing 1238.日志统计 分析思路 前一区间和后一区间有大部分是存在重复的 我们要做的就是利用这部分 来缩短我们查询的时间 并且在使用双指针时要注意对所有的博客记录按时间从小到大先排好顺序 因为在有序的区间内才能使用双指针记录两个区间相差 相当于把一个…

FPGA_工程_按键控制的基于Rom数码管显示

一 信号 框图&#xff1a; 其中 key_filter seg_595_dynamic均为已有模块&#xff0c;直接例化即可使用&#xff0c;rom_8*256模块&#xff0c;调用rom ip实现。Rom_ctrl模块需要重新编写。 波形图&#xff1a; 二 代码 module key_fliter #(parameter CNT_MAX 24d9_999_99…

大数据分析|大数据分析的十大应用领域

有许多技术可用于分析大数据。这项工作介绍了BDA适用的各种分析技术领域如下。 &#xff08;1&#xff09;社会分析 社交分析是实时数据分析中一个重要且不断发展的分析方法。它分为社交网络(例如&#xff0c;Facebook和LinkedIn)&#xff0c;博客(例如&#xff0c;Blogger和W…

【51单片机】LCD1602(可视化液晶屏)调试工具的使用

前言 大家好吖&#xff0c;欢迎来到 YY 滴 单片机系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过单片机的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY…

AMH面板如何安装与公网远程访问本地面板界面

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

使用C#读取PDF中所有文本内容

先安装如下包 using iTextSharp.text.pdf; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text;namespace ReadPdfText {class Program{static void Main(string[] args){string path "0017_审判流程管理信息表2…

双非本科准备秋招(21.2)—— ReentrantLock

一、vs synchronized 可中断可以设置超时时间可以设置为公平锁支持多个条件变量 语法&#xff1a; // 获取锁reentrantLock.lock();try {// 临界区} finally {// 释放锁reentrantLock.unlock();} 二、可重入 连续三次上锁。 Slf4j(topic "c.test") public class…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Rating组件

鸿蒙&#xff08;HarmonyOS&#xff09;项目方舟框架&#xff08;ArkUI&#xff09;之Rating组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Rating组件 提供在给定范围内选择评分的组件。 子组件 无。 接口 Rating(opt…

vscode +markdown 的安装和使用

文章目录 前言一、vscode markdown 是什么&#xff1f;1.vscode是什么&#xff1f;2.markdown 是什么&#xff1f; 二、安装步骤1.下载2.安装 三、安装插件1.安装 Markdown All in One2.安装 Markdown Preview Enhanced3. Paste Image v1.0.44.LimfxCodeExv0.7.105.Code Spell …

JSP原理简述

JSP动态网页技术&#xff0c;可以定义html&#xff0c;css&#xff0c;js等静态内容&#xff0c;还可以定义java代码等动态内容。 注意导入坐标时&#xff0c;JSP的scope标签是provided&#xff0c;和servlet一样&#xff0c;否则会报错。 JSP本质上就是一个Servlet&#xff0c…

一周学会Django5 Python Web开发-Django5创建项目(用命令方式)

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计11条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

【Kotlin】Kotlin环境搭建

1 前言 Kotlin 是一种现代但已经成熟的编程语言&#xff0c;由 JetBrains 公司于 2011 年设计和开发&#xff0c;并在 2012 年开源&#xff0c;在 2016 年发布 v1.0 版本。在 2017 年&#xff0c;Google 宣布 Kotlin 正式成为 Android 开发语言&#xff0c;这进一步推动了 Kotl…

Linux系统安装(CentOS Vmware)

学习环境安装 VMware安装 VMware下载&安装 访问官网&#xff1a;https://www.vmware.com 在此处可以选择语言 点击China&#xff08;简体中文&#xff09; 点击产品&#xff0c;点击Workstation Pro 下滑&#xff0c;点击下载试用版 下滑找到Workstation 17 Pro for Wi…

c#: 表达式树的简化

环境&#xff1a; .net 6 一、问题&#xff1f; 有下面的表达式&#xff1a; var nums new List<int> { 1, 2, 3 }; Expression<Func<int, bool>> exp i > i > nums.Max();我们知道&#xff0c;它其实就是&#xff1a;exp i > i > 3; 那么…

IT行业有哪些证书含金量高呢?

目录 引言&#xff1a; 一、 计算机网络类证书 二、 数据库管理类证书 三、 安全与信息技术管理类证书 四、 编程与开发类证书 五、 数据科学与人工智能类证书 六、结论&#xff1a; 悟已往之不谏&#xff0c;知来者犹可追 …

docker部署docker管理工具easydockerweb

重要提示 功能比较少,建议体验一下即可 安装 docker run -it -d -p 10041:3000 -e EDW_USERNAMEadmin -e EDW_PASSWORDadmin -v /var/run/docker.sock:/var/run/docker.sock qfdk/easydockerweb 使用 概览 镜像管理 容器管理

《爬虫职海录》卷二 • 爬在广州

HI&#xff0c;朋友们好&#xff0c;「爬虫职海录」第二期更新啦&#xff01; 本栏目的内容方向会以爬虫相关的“岗位分析”和“职场访谈”为主&#xff0c;方便大家了解一下当下的市场行情。 本栏目持续更新&#xff0c;暂定收集国内主要城市的爬虫岗位相关招聘信息&#xf…

斗地主登录界面(JAVA图形化界面)设置

1.实现代码 import CodeUtil.CodeUtil; import domain.User;import javax.swing.*; import java.awt.*; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.ArrayList;public class LoginGame extends JFrame implements MouseListen…