【问题标题】:Client http request to an Electron app客户端对 Electron 应用程序的 http 请求
【发布时间】:2017-07-10 11:19:57
【问题描述】:

所以我正在做一个我想变成电子应用程序的项目,目前它是一个 Angular (2.x) 应用程序并使用 express 作为服务器。

我遇到的问题是如何在电子中复制快速路由器?基本上我希望能够从客户端到电子服务器(当前使用@Angular/http 服务)进行获取、发布、更新等操作。我知道 Electron 有自己的异步/同步消息的消息协议,但它更类似于 Web 套接字。

客户端示例:

this.http.post('/setValue', {key: key, value: value}).subscribe((data)=>{});

服务器端:

router.post('/setValue', (req, res, next)=>{
    //Do something
});

【问题讨论】:

    标签: javascript angularjs electron


    【解决方案1】:

    您应该能够在您的 Electron 启动脚本中启动 express 服务器。只需让它监听某个随机端口号,然后让您的 Angular2 应用点击http://localhost:port URL 来获取所有 http 请求。

    我的建议是将原来的 Angular2 应用拆分成两个独立的应用:

    1. 让您的快速路由保持原样,并将它们移动到自己的专用 API 中。在某处托管 API 并为其提供自己的 URL。

    2. 让 Electron 应用程序访问所有与数据库相关的调用的 API URL。

    这将使您分离关注点并使系统更易于管理。此外,您的 API 将来可供其他应用程序使用。例如,假设您接下来要做一个移动应用程序,移动应用程序可以利用现有的 API,您可以为自己节省大量工作。

    【讨论】:

    • 今晚我会考虑这样做,我可能不会将 API 从电子应用程序中分离出来,因为 API 对每个使用它的人来说都是独一无二的(它是一个 redis 管理器,因此在 API 和将特定于用户)。
    猜你喜欢
    • 1970-01-01
    • 2017-10-30
    • 2018-02-09
    • 2013-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    相关资源
    最近更新 更多