# 移动滑块拼图验证慢

#### 问题现象

在移动滑块到图片中指定地方松手后，安全验证较慢，等待一段时间图片验证码才消失。

#### 背景知识

*   ArkUI Inspector：DevEco Studio提供的布局分析工具，开发者可以借助它预览真机或模拟器中的UI效果，快速定位布局层级问题，也可以观察组件属性、不同组件之间的关系等。
*   DevTools：一个Web前端开发调试工具，提供了电脑上调试移动设备前端页面的能力。开发者通过setWebDebuggingAccess接口开启Web组件前端页面调试能力，利用DevTools工具可以在电脑上调试移动设备上的前端网页，更多详细内容可以看使用DevTools工具调试前端页面。

#### 问题定位

1.  使用ArkUI Inspector抓取图片验证码页面，发现该页面为Web页面。
    
2.  使用DevTools录制图片验证码验证过程，在搜索框中输入touchend找到手指从屏幕移开的时间点为03.270左右，查看该时间点后未发现有较长耗时的网络请求。
    
3.  排查图片验证码开始消失之前网页执行的任务，发现在05.049时间点有触发计时器，推测是在执行安全验证时有延迟操作，同时在该时间点附近有进行query（查询）网络请求。
    
4.  在搜索框中输入setTimeout，发现在03.548时间有设置超时1.5s的计时器，与上述触发计时器的时间点吻合。
    
    查看手指离开屏幕到设置计时器的过程，发现有进行网络请求，耗时257ms左右。
    
    综上可知在手指离开屏幕后，应用网页有触发网络请求进行验证，然后延迟1.5s后才隐藏图片验证码，导致验证慢的问题。
    

#### 分析结论

在移动滑块拼图验证时执行了延迟操作，等待一段时间才隐藏图片验证码，引起拼图验证慢的问题。

#### 修改建议

1.  减少计时器的超时时长。
2.  添加验证过程中的状态提示。