如何从 PhantomJS 或 grover 跳过代码执行

2024-03-19

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

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

注意:当我编写 JavaScript 单元测试时,出现了问题。 但我认为这在其他情况下会有帮助。


您只需要通过简单的验证包装代码即可:

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

在这种情况下,应用程序中的代码将正常执行,但当 PhantomJS 或 grover 检查它时会被跳过。

Notes:

  • 我使用“window['phantom']” - 因为我的应用程序使用谷歌关闭最小化 编译器,在其他情况下您可以轻松使用 (!window.phantom && !window._phantom);
  • window['_phantom'] - 使用 PhantomJS 指示存在grover tool.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 PhantomJS 或 grover 跳过代码执行 的相关文章

随机推荐

  • 将 ES7 静态 propTypes 与 React-Native 结合使用

    当我使用 React Native 默认打包程序启动项目时 出现以下错误 Unexpected token在这一行 static propTypes 我查看了 GitHub 上的 React Native issues 但没有找到解决方案
  • mongodb+srv URI 不能有端口号

    我有 注意 用户名和密码是组成的 const CONNECTION URL mongodb srv smith bob email protected cdn cgi l email protection T llyHo cluster0
  • 如何获取 TensorFlow 中估算器的默认会话?

    我创建了一个估算器并使用估算器将其导出到 SavedModel 文件export savedmodel 功能 出于可重复性的原因 我希望能够重新创建估算器 加载 SavedModel 文件中的变量 然后调用evaluate 并得到相同的结果
  • 在启用 SuperTab 的情况下,如何使用 Tab 键在 vim 中缩进?

    我刚刚在 vim 中启用了 SuperTab 如果我尝试缩进空行 SuperTab 会尝试插入字符串 我想 我想要的是让 SuperTab 提供补全功能only如果光标左侧有非空白 我不想使用 Ctrl V 或 Ctrl Q 或其他任何东西
  • 测量 x86-64 中的 TLB 未命中处理成本

    我想估计运行 Linux 的 x86 64 Intel Nehalem 计算机上由于 TLB 未命中而导致的性能开销 我希望通过使用一些性能计数器来获得这个估计 有人知道估计这个的最佳方法是什么吗 谢谢 阿尔卡 如果您可以访问基于 West
  • 我可以限制 php 脚本的最大 CPU 使用率吗?

    我有一些使用大量 cpu 的脚本 是否可以限制允许进程使用的 cpu 量 顺便说一句 我正在 CentOs 5 5 上运行 我帮助一位 PHP 编码员创建了解决类似问题的 PHP 脚本 这些是长时间运行的 PHP 脚本 会产生大量负载 由于
  • 图片可以有多个标签吗?

    例如 当我将新图像推送到存储库时 我希望它有两个标签0 2 and latest 这将允许始终通过使用拉取最新的图像版本latest标签和特定版本使用0 2例如标签 用docker可以吗 有什么解决方法吗 我看到的唯一解决方案是进行两次单独
  • React.js 中的悬停按钮

    我想问如何制作一个按钮 但是当鼠标位于按钮上 悬停 时 新按钮显示在前一个按钮上方 并且它在react js中 thx 这是我的代码的方式 var Category React createClass displayName Categor
  • Apple 关联文件在开发中获取,但在 TestFlight 和 App Store 中未获取

    通用链接在开发中工作得很好 但是一旦我对应用程序进行签名并将其部署到 TestFlight 和 App Store 似乎未获取 apple app site association 因此该应用程序未注册以打开通用链接 1 well know
  • 如何在 Angular 6 中调用多个 API 并订阅?

    在我的应用程序中 调用所有POST请求我已经使用了service 当我得到一个specific code 例如 401 我从服务器调用 API 来获取新令牌 在收到另一个令牌之前 如果有任何其他 API 调用 我会将所有这些请求存储在一个数
  • 元素的 jQuery 标签名称

    我尝试在 jQuery 中获取元素标签名称 我有以下 html div class section h1 New Revision nbsp img alt Lock closed class edit src assets lock cl
  • 从网络提供商处获取准确的当前位置

    我使用以下代码从应用程序中的网络提供商获取当前位置 LocationManager mgr LocationManager getSystemService LOCATION SERVICE boolean network enabled
  • 在 vue 组件上提交表单时如何获取单选按钮的值?

    我有两个组件 我的第一个组件是这样的
  • Chronicle 与 Chronicle-queue 包

    我刚刚开始使用历史记录队列 但是我对使用哪个 API 来读取 写入队列有点困惑 具体来说编年史队列 5 https www javadoc io doc net openhft chronicle queue 5 17 17 vs 编年史
  • 如何解释 EL 表达式中方括号 ([]) 运算符的用法

    当我阅读时春天宠物诊所 https github com SpringSource spring petclinic 示例应用程序 我发现他们总是把add and modify功能集成到单个 JSP 文件中 并且它们使用 owner new
  • 在 C# 中将 LDAP AccountExpires 转换为 DateTime

    我想将 LDAP AccountExpires 中的 18 位数字字符串转换为正常日期时间格式 129508380000000000 gt gt 2011年5月26日 我通过使用以下链接获得了上述转换 http www chrisnowel
  • Admob 插页式广告显示为黑色,并带有新的广告单元 ID

    我创建了一个应用程序 并且正在使用 admob 插页式广告 由于我已为该应用程序创建了新的插页式广告单元 ID 但广告显示为黑色并带有关闭按钮 但如果我使用旧的应用程序 广告单元 ID 广告将会显示 我不知道为什么会出现这个问题 谢谢 对于
  • 泛型地狱:hamcrest 匹配器作为方法参数

    因此 让我们有一个字符串列表和一个函数 该函数采用 Hamcrest 匹配器并返回matches 提供的匹配器的方法 public boolean matchIt final Matcher
  • 如何在 Notepad++ 中多行“在文件中替换...”

    如果有免费的源代码编辑器记事本 http notepad plus sourceforge net uk about php具有 在文件中查找 功能 即无需在编辑器中打开文件 它是否也具有 在文件中替换 功能 Notepad 是基于Note
  • 如何从 PhantomJS 或 grover 跳过代码执行

    接下来的问题是 我的应用程序中有 JavaScript 代码 我想跳过 隐藏 PhantomJS 和 grover 检查 执行中的一些代码 So 如何跳过 隐藏 PhantomJS 或 grover 的代码执行 注意 当我编写 JavaSc