我正在与PhantomJS合作。我想在加载WikiPedia的第一页时比较PhantomJS与谷歌浏览器的行为。根据我的观察,两个浏览器生成的请求触发不同。该请求中有一个参数,它在每个浏览器中采用不同的值。正如我发现的,WikiPedia的JavaScript文件中有一行,浏览器开始表现不同。该行如下:
raw = localStorage.getItem(mw.loader.store.getStoreKey());
' raw'的价值使用谷歌浏览器时,“无法使用”#。但是,' raw'使用' PhantomJS'是一些JavaScript函数。这种差异导致两个浏览器的行为不同,并在最后为其中一个参数分配不同的值。
我确信在执行此行之前,localStorage.setItem()没有行,我想知道为什么PhantomJS可以将这些函数加载到' raw'?这些功能来自哪里? PhantomJS对于本地存储有任何问题吗?命令?
答案 0 :(得分:0)
出现此问题的原因是PhantomJS尽管有其他浏览器(如Chrome),但并未自动删除localStorage文件。因此,在每次运行中,它使用以前保存的特定网站信息。为了避免这个问题,我们需要在运行PhantomJS之前删除localStorage文件。