2016-01-21 55 views
0

我想保存一个网页的“快照”,但应保持“交互”状态 - >所有Javascript状态必须保存和恢复。序列化网站的完整Javascript状态,包括Closure/Hidden Scopies?

例】我试图解决这一问题:给定一个网页,这在全球范围内执行下面的脚本:

function f(x) { return function() { return x; } } 
var g = f(2); 

我想节省函数f(或多或少琐碎)和变量g(它从f调用中的x关闭)到文件并稍后恢复网站的状态。

据我所知,似乎不可能仅使用“web”技术(即具有网页本身具有的权限)来执行此操作。因此,我猜我必须实现一个浏览器插件来实现这一点。

这样的事情已经存在吗?什么是一个好的起点?我注意到Firefox会话恢复功能类似,你知道我是否可以重用这种机制?如果不是这样做是可行的,像这样的“调试器”风格的插件?有更简单的解决方案吗?

+0

基本上,不是没有对浏览器本身进行不平凡的修改。 – Xan

回答

0

JavaScript对象保存在DOM /其他本机对象上。本机对象具有隐藏状态,可以与全局浏览器状态或插件纠缠在一起。

所以我能想到的唯一真正的方法是在虚拟机中运行浏览器并快照/克隆该虚拟机。