如何跳过PhantomJS或grover的代码执行[英] How to skip the code execution from PhantomJS or grover

问题描述

接下来的问题是:我的应用程序中有 JavaScript 代码,我想从 PhantomJS 和 grover 检查/执行中跳过/隐藏一些代码.

那么,如何跳过/隐藏 PhantomJS 或 grover 的代码执行?

注意:问题是在我编写 JavaScript 单元测试时出现的.但我认为这在其他情况下会有所帮助.

推荐答案

只需简单的验证包装代码即可:

if (!window['phantom'] && !window['_phantom']) {
  // your code here...
}

在这种情况下,您的应用程序中的代码将正常执行,但在 PhantomJS 或 grover 将对其进行检查时会被跳过.

注意事项:

  • 我使用"window['phantom']" - 因为我的应用程序使用 google 关闭最小化编译器,在其他情况下您可以轻松使用 (!window.phantom &&!window._phantom);
  • window['_phantom'] - 使用 grover 工具指示 PhantomJS 的存在.

本文地址:https://www.itbaoku.cn/post/1740082.html