【问题标题】:How can I tell whether a web app was built using Angular (or other technologies)?如何判断 Web 应用程序是否是使用 Angular(或其他技术)构建的?
【发布时间】:2015-07-09 02:54:54
【问题描述】:

如何通过查看页面源代码而不需要询问开发人员来判断 (Drupal 7) 网络应用程序是否是使用 Angular 构建的?

【问题讨论】:

  • 尝试打开控制台并输入window.angular.version

标签: angularjs drupal


【解决方案1】:

最好的检查方法是在浏览器控制台上写“angular”。如果你得到任何对象 [With child objects as "bind","bootstrap","callbacks","module" etc.] 那么它就是一个有角度的网络应用程序。

【讨论】:

  • 我添加了一张你可以在控制台中写成角度的图片,然后点击三角形你可以在那里找到子对象
  • 在 Angular 4 中,现在我们无法在控制台中访问 Angular 对象。所以需要找到另一个修复方法。
  • 您实际上无法在 Angular 2+ 的控制台中访问 Angular 对象
  • 在 Angular 2+ 中运行它:window.getAngularTestability
  • 不是这样,这个网站是在 Angular 8 上制作的,但运气不好akveo.com/ngx-admin/pages/dashboard
【解决方案2】:

您可以安装名为 Wappalyzer 的 chrome 或 firefox 扩展程序。它会告诉您在浏览器中导航到哪个站点以及它们使用的堆栈。

在这里找到它:https://www.wappalyzer.com

【讨论】:

  • 惊人的扩展
  • 不幸的是,它经常显示 Express Web 框架而不是 Angular。我还有一个用 Python Flask 编写的网站,Wappalyzer 无法识别它。
  • 链接已失效。
  • @igsm 主要是因为flask是一个后端框架,它在后台做了大部分的处理,并且不包含渲染网站上的任何特定线索(例如flask相关的cmets),而它是易于识别其他框架,例如 react(具有虚拟 DOM)或 angular(具有遍布各处的 ng 属性)。
【解决方案3】:

您可以先尝试:angular.version.full。如果这不起作用,请尝试getAllAngularRootElements()[0].attributes["ng-version"]。在 Angular 1 中,前者将起作用,而从 Angular 2 开始,后者将起作用。

【讨论】:

    【解决方案4】:

    如果是在线网站,您可以使用http://builtwith.com/,它通常可以为您提供有关该网站的大量有用信息。

    但是,如果他们使用 Angular,您可以查看他们的页面来源,看看他们是否使用了 Angular 的任何属性,例如 ng-repeat

    您还可以查看浏览器在浏览该网站时获得的来源,以查看来源中是否包含 angularjsjavascript 文件。

    【讨论】:

    • 这是一个很棒的资源!
    【解决方案5】:
    • 使用 ng-app 指令声明的应用程序

    • 非常简单的控制器和指令

    • 检查代码中的 ng-model、ng-repeater 属性。所有这些属性都是用小写字母写的。

    • 您还可以通过在控制台中键入来检查 (ctrl + shift + i) 并导航到控制台选项卡。输入 window.angular.version --> 它显示您当前正在检查的站点的版本。

    【讨论】:

    • 这对我有用 window.getAllAngularRootElements()
    【解决方案6】:

    试试

    https://builtwith.com/

    这是目前为您提供有关网站使用哪些技术的最详细信息的网站。他们将让您每天进行 5 次免费查找。

    https://wappalyzer.com/

    也是一个不错的选择,可以作为builtwith的补充。我认为查找没有限制,但结果不太详细。

    这两个一起使用可能会给你更多的洞察力。

    【讨论】:

      【解决方案7】:

      有一个名为“ng-detector”的 Google Chrome 扩展程序。它可以从谷歌网上商店获得:

      https://chrome.google.com/webstore/detail/ng-detector/fedicaemhcfcmelihceehhaodggfeffm

      它会在 URL 栏旁边创建一个小图标,指示它是否认为该页面是使用 Angular 创建的,尽管我尚未彻底测试其有效性。

      【讨论】:

        【解决方案8】:

        在浏览器控制台中使用 window.getAllAngularRootElements() 如果它返回一些值它是一个角度应用程序

        【讨论】:

          【解决方案9】:

          安装 chrome 扩展 React-Detector,它可以工作!

          【讨论】:

            【解决方案10】:

            您可以安装名为 Augury 的 Chrome 或 Firefox 扩展程序。它会告诉您应用程序是否是 Angular。

            【讨论】:

              【解决方案11】:

              window.getAllAngularRootElements() 为我工作

              【讨论】:

                【解决方案12】:

                对于 Angular,在 Chrome 的检查器中,在 Elements 选项卡中,body 元素内部是一个名为 app-root 的元素,其中包含 ng-version,它显示了它正在使用的 Angular 版本。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2017-10-03
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2023-04-06
                  • 2010-12-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多