正确使用电子

我想进入Electron,而且我已经开始了解它,但是我不认为我完全理解我应该如何使用它。 从我所收集的电子中,我可以用HTML,CSS和Javascript创build跨桌面应用程序(Chromium) ,并在后台(NodeJS)执行任务。

令我困惑的是以下几点:

  • 我应该怎么用我的服务器?

例如 ,我构build了一个简单的NodeJS应用程序,它使用Passport和一些其他模块来创buildlogin/注册系统(使用MongoDB) 。 它有用于login和注册的HTML文件。

我不知道如何使用我的电子应用程序,事实上,我不太明白如何实际使用电子。 我是否应该将所有login/注册应用程序代码移动到Electron应用程序,还是应该使用Electron以某种方式连接到我的login/注册应用程序并加载网站?

  • 如果我将我的代码移动到我的电子应用程序,会导致安全问题?

我应该怎么用我的服务器?

您需要考虑将应用程序作为独立桌面应用程序(用作客户端应用程序)与用于您的API的服务器以及由云提供商托pipe的后端逻辑分离。

通过这样做,您可以专注于桌面(电子)应用程序的关注点分离,并确保服务器(如API,身份validation和其他后端逻辑)得到充分优化,并作为自己的多个工作人员。

如果我将我的代码移动到我的电子应用程序,会导致安全问题?

如果您没有定期更新您的Node版本(如内存缓冲区溢出攻击),那么Electron应用程序开发有一些安全问题。

另一个要考虑的问题是Electron社区如何提供服务并解决客户端应用程序的权限问题以及用户安装应用程序时授予的常规文件权限问题。

作为一名开发人员,您有责任确保第三方库不会损坏用户的计算机。 (设想安装一个库依赖项,其目的是恶意删除整个文件系统)。

我构build了一个简单的NodeJS应用程序,使用Passport和一些其他模块来创buildlogin/注册系统

对于身份validation,您可以基于您提供给身份validation服务的客户端请求/post来提供来自API的响应。 您不一定必须将validation服务器提供/安装到您的Electron应用程序中,因为这对于用户来说可能有点麻烦,并且会暴露您的身份validation服务给其他人进行反向工程/破解。