-
登陆自己的QQ空间 https://qzone.qq.com/
-
进入个人档,点击
修改基本资料 -
在昵称处填入一个到多个Unicode空格
-
点击最下方的
保存按钮,此时会弹框提示很抱歉,昵称不能全为空,请重新输入- 按Chrome
F12或者Ctrl+Shift+I快捷键打开开发者工具窗口 - 进入
Network标签页,先点击Clear清理一下之前的请求记录 - 这时再点击一次页面中的
保存按钮,在Network标签页中没有看到发起请求记录
- 按Chrome
-
进入
Elements标签页按Ctrl+F查找昵称不能全为空,定位到如下元素<div class="qz_msgbox_layer_wrap" id="q_Msgbox" style="top: 218px; display: none;"> <span class="qz_msgbox_layer" style="z-index: 10000;" id="mode_tips_v2"> <span class="gtl_ico_hits"></span> 很抱歉,昵称不能全为空,请重新输入 <span class="gtl_end"></span> </span> </div>
-
右键点击
div元素,勾选Break on->attribute modifications -
再次点击页面中的
保存按钮,此时就会触发提示框div的断点,
开发工具自动跳转到Source标签页的msgbox.js文件中的断点
点击左下角的{ }Pretty print按钮,查看格式化后的js源文件 可以看到断点是停在名为QZFL.widget.msgbox.show的函数中 按F8或者Ctrl+\恢复js执行到完成
再回到Elements标签页,右键点击div元素,去除勾选Break on->attribute modifications -
回到页面中右键点击昵称输入框,选择
检查定位到输入框元素所在的位置
往上滚动查看html源码,可以看到基本资料的表单是一个内嵌iframe的html页面
再往下滚动到内嵌html的末尾,可以看到几个引入的js文件,资料页面相关的操作应该就在profile.js这个文件里面了 -
进入
Sources标签页,按Ctrl+P或点击菜单 输入名称profile.js定位打开js源文件
先点击左下角的{ }Pretty print按钮,查看格式化后的js源文件
按Ctrl+F输入查找QZFL.widget.msgbox.show函数,定位到如下语句在if语句行号处点击标记断点if (/^\s*$/.test(nick.value)) { TOP.QZFL.widget.msgbox.show("\u5f88\u62b1\u6b49\uff0c\u6635\u79f0\u4e0d\u80fd\u5168\u4e3a\u7a7a\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165", 1, 1E3); return; }
-
回到页面再次点击
保存按钮,js代码运行暂停在上面标记的断点处
进入Console标签页,先点击Clear清理控制台信息
然后输入代码var tmp = nick.value; nick.value = "xxx"回车执行
切换到Sources标签页js暂停的断点处,按F10或Ctrl+`继续执行js代码到下一处 再回到Console标签页,输入代码nick.value = tmp回车执行
切换到Sources标签页,点击取消if语句行号处标记的断点
最后按F8或者Ctrl+\恢复js执行到完成
Last active
March 25, 2020 14:42
-
-
Save yougg/8f060a1b081efb8fec6c4903e012f2d4 to your computer and use it in GitHub Desktop.
通过QQ空间个人资料修改QQ昵称为空格过程记录
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment