Microsoft Edge沙盒的外部Javascript代码打破了Prototype

时间:2015-08-18 14:31:27

标签: javascript security prototypejs sandbox microsoft-edge

Microsoft Edge正在做的事情,至少从我能看到的情况来看,任何外部JavaScript(即来自任何其他FQDN的javascript与网站不同)都会被“沙盒化”到一定程度。

我不确定沙盒的数量是多少,但Edge不会让你看到功能代码。所以,如果你要做一个someFunction.toString(),你将得到

function someFunction() { [native code] }

在任何其他浏览器中,您将获得

function someFunction(args, args1) { /*the functions code*/ }

您当然可以运行该功能,但无法将其打印出来。这可能是Prototype的问题所在。对于子类,prototype执行函数的toString以查看它是否具有“$ super”作为其第一个参数。如果是,则它知道将其与父类的功能相关联。如果原型无法看到函数的文本版本,则任何子类都将无法正常工作。

Edge中没有可以更改的安全设置。

有没有人知道任何解决方法,或者我们只是等待微软是否会解决这个问题?

!!! UPDATE !!!

我刚刚确认最新的Windows 10 Cumulative Update已经解决了这个问题。谢谢!

0 个答案:

没有答案