【问题标题】:How to disable the debug remote port in node-webkit desktop app如何在 node-webkit 桌面应用程序中禁用调试远程端口
【发布时间】:2014-06-02 07:37:57
【问题描述】:

我不想保护打包在 exe 文件中的 node-webkit 桌面应用程序的代码。 问题不在文件上,而是在远程调试的专用端口上。

也许我不明白,但是,在 Windows 上,如果我执行“netstat -a -o”命令,我会看到一个与应用程序关联的开放端口,如果我在浏览器上打开这个端口,我会看到一个带有“Inspectable WebContents”的页面和指向 webkit 应用程序的链接。

通过这个调试窗口,可以访问应用程序的所有源,我不知道如何禁用此功能。

【问题讨论】:

标签: node.js debugging port node-webkit


【解决方案1】:

目前,我认为在 nw.js 中没有禁用远程调试的实际方法。

即便如此,根据wiki,远程调试似乎只能通过命令行开关执行。因此,在 nw.js 支持禁用远程调试功能之前,您可以阻止 chromium 命令行开关(或仅--remote-debugging-port)以防止用户进行任意远程调试。

例如:

const gui = require('nw.gui');
const app = gui.App;

for (let element of app.fullArgv) {
    // app.argv has only user's switches except for the chromium args
    if (app.argv.indexOf(element) < 0) {
        app.quit(1); // invalid args!
    }
}

但是,我不太确定上述代码能否保护您的应用程序代码,因为 nw.js 在内部使用 Chromium。这样,应用程序代码将在初始化时提取到临时文件夹中。而上述解决方案并不能真正保护您的 nw.js 应用程序。查看更多详情:https://github.com/nwjs/nw.js/issues/269

注意:node-webkit已更名为nw.js

【讨论】:

    猜你喜欢
    • 2013-05-09
    • 2015-01-24
    • 2015-01-18
    • 2015-09-22
    • 2015-12-06
    • 1970-01-01
    • 2016-06-08
    • 2013-05-02
    • 2015-04-05
    相关资源
    最近更新 更多