首先我们问下自己什么是isTrusted属性?引用mozilla.org的解释:“Event接口的 isTrusted 属性是一个只读属性,它是一个布尔值(Boolean)。当事件是由用户行为生成的时候,这个属性的值为 true ,而当事件是由脚本创建、修改、通过 EventTarget.dispatchEvent() 派发的时候,这个属性的值为 false 。”
如果事件是我们手动触发的isTrusted(可信)就是true,如果是通过JavaScript去直接执行就是false。
解决
Chrome DevTools Protocol协议并不是在chrome控制台下直接执行js,所以isTrusted还是和我们手动点击一样是可信的,就如同相当于浏览器给你开了一个方便之门,可以“假装是手动”,类似的其他点击操作原理一样
所以,最后我们需要注意的就是想不要被前端反爬利用isTrusted检测到,就不要用直接执行js的方式去操作浏览器。