gpt4 book ai didi

javascript - 对 Ember 应用程序进行反射(reflection)/内省(introspection)以查找特定模型的实例

转载 作者:行者123 更新时间:2023-11-28 06:25:30 26 4
gpt4 key购买 nike

首先,我不想了解有关 Ember 的一切。我只想在现有的 Ember 应用程序上使用它来提取有关应用程序状态的信息。

我正在开发一个 Chrome 扩展程序,让用户可以从 Vine 网站下载“原始”Vine 视频。

Vine 基本上是一个 Ember 应用程序。您可以轻松地使用 Ember Inspector 扩展来内省(introspection)应用程序,并从应用程序状态深处手动提取视频 URL。

似乎没有可靠的方法仅使用 DOM 来提取这些 URL,因为 Vine 使用“blob URL”。所以我想的是,我会做一些类似于 Ember Introspector 正在做的事情,在应用程序上使用反射/内省(introspection)。

如何从内容脚本访问 Ember 应用程序(及其状态)?

最佳答案

根据评论,您对 Chrome 扩展相当熟悉,您的问题可以归结为“Ember Inspector 如何在高级别上工作”。

同样,从评论中可以明显看出,Ember Inspector 采用了一种有时称为“注入(inject)脚本”或“页面级脚本”的技术。

内容脚本可以插入 <script>标记到页面中,这将违反 isolated context内容脚本驻留在页面上下文中并将在页面上下文中执行。因此,您可以访问 Ember 的所有“内部”:您现在处于相同的 JS 上下文中。您可以查看this question了解注入(inject)此类脚本的方法。

剩下的问题是如何在注入(inject)的脚本和内容脚本之间进行通信,因为注入(inject)的脚本无法再访问 Chrome API。例如,可以使用 custom events 来完成此操作。 .

关于javascript - 对 Ember 应用程序进行反射(reflection)/内省(introspection)以查找特定模型的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35161714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com