电子(原子壳)Module.require的源代码在哪里?

时间:2015-06-01 16:31:45

标签: node.js electron

我正在使用模仿nodejs require自定义要求功能,而且效果很好。

然而,在电子中,我得到了

SecurityError: An attempt was made to break through the security policy of the user agent.

在自定义代码中调用window.addEventListener时。

如果我能阅读电子'需要'功能的源代码,我可能会理解为什么我的版本会失败。

2 个答案:

答案 0 :(得分:1)

您正在寻找的应该是GitHub。

https://github.com/atom/atom 要么... https://github.com/atom/electron 要么... https://github.com/atom/node

根据您的更新,您正在寻找的代码(关于共享全局上下文)实际上是:https://github.com/atom/node/blob/atom-iojs/lib/module.js#L399

因为Electron不包含最新版本的Node.js,所以我认为值得一提。

答案 1 :(得分:1)

使用toString进行检查后,除了Module._contextload为真时的编译外,源与nodejs相同。这部分似乎已经过优化了。

我的代码现在通过使用编译sharing the global context正常工作,因此表现为来自同一个来源(铬中的XSS预防)。这与电子中的require功能相同。