欺骗/伪装屏幕分辨率?

Pok*_*oky 14 javascript spoof spoofing screen-resolution anonymity

在浏览网页时,我需要将我的屏幕分辨率伪造到我正在查看的网站,但保持我的视口相同(Chrome或FF的模拟并不能解决我的问题).

例如,如果我从具有1920x1080px分辨率的全屏模式的浏览器访问http://www.whatismyscreenresolution.com/,我希望该网站认为我使用1024x728px,但仍然能够以全屏模式浏览.

我的一个猜测是我需要以某种方式覆盖js变量screen.width和screen.height(或完全摆脱js,但特定网站将无法使用js禁用),但如何?那就足够了吗?

这是出于匿名目的,我希望我不需要详细解释.即使我从各种设备访问该站点,我也需要看作一个设备(Tor浏览器不是一个选项 - 更改IP).我正在使用的浏览器是firefox 30.0,它运行在VPS(Xubuntu 14.04)上我正在远程连接.

这个帖子(欺骗JS对象)让我接近但不够,它仍然没有答案.我已经在很长一段时间内解决了这个问题,所以任何推荐都受到高度赞赏!

Nat*_*ate 1

您提供的网站使用以下 Javascript 来确定要显示的宽度/高度值:

    height = screen.height;
    width = screen.width;

    res = document.getElementById ('resolutionNumber');
    res.innerHTML = width + " X " + height;
Run Code Online (Sandbox Code Playgroud)

如果您关心的只是确保这些值发生变化,则可以在执行它们的代码之前执行以下操作:

    screen = new function() { this.width = 1; this.height = 2 }
Run Code Online (Sandbox Code Playgroud)

如果您关心屏幕对象的其他属性,则需要一些额外的 Javascript 来保留这些属性。

要查看其实际效果,请加载他们的页面,然后使用 Firefox 或 Chrome 开发工具将调试器放入其 Javascript 中(第 116 行,其中显示height = screen.height;),执行上述覆盖,然后按播放!

如果您想对访问的每个页面执行此操作,则需要将其合并到 Chrome 或 Firefox 扩展中(我已经制作了自定义 Chrome 扩展,非常简单)。