设计 Javascript 前端 <-> C++ 后端通信

2024-05-09

在我最近的将来,我将不得不制作一个具有 C++ 后端和 Web 前端的系统(要求)。目前,我对此了解不多。我认为前端将触发数据传输,而不是后端 - 所以不需要类似 Comet 的东西。

由于在该领域的经验可能很少,我非常感谢您对我所做的设计决策的评论。

首先,我不喜欢从 C++ 生成 HTML 的选项。 因此,C++ 后端必须与 Javascript 前端进行通信。我在这里看到的最简单的选择是 Ajax。我想到目前为止应该还可以。

通过 Ajax 与 C++ 后端通信意味着后端应该能够处理 HTTP。最好将提供实际数据的后端与 HTTP 处理功能分开。

在这里我看到了 Node.js 的位置。我对它有了一个概述,这就是我所有疑问所在的地方。

要在 Node.js 上拥有 HTTP 处理服务器,并将“数据后端”作为 Node.js 模块?我想,应该没问题 - 但我不确定我是否真的需要所有这些异步,所以可能有一些我不知道的更简单的选项?你会如何制作这样一个系统?

提前致谢。


“所有这些异步”并不是 Node.js 努力提供的额外功能。一旦您了解了 Node.js 的工作原理,这是一种不同的 Web 服务视图,就像呼吸一样简单。

例如,我的同事需要一种方法将 C++ 程序包装为 Web 服务,但该程序的启动成本很高,因此他们只想运行该程序的一个实例,循环运行,为所有 Web 提供服务要求。 Node.js 中的整个过程只用了不到两屏。

封装每个请求调用的单个程序只需不到十行 Node.js 即可完成。不要将异步性视为一件苦差事 - 如果您接受它,Node.js 就会很棒。

也就是说,您可以采用 CGI 路线,并以更标准的方式进行,最终结果几乎相同。This http://rudeserver.com/可能会也可能不会派上用场。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设计 Javascript 前端 <-> C++ 后端通信 的相关文章

随机推荐

  • 我们可以使用 EWS 托管 API 连接到 Exchange 2016 吗?

    我使用的是 EWS 托管 API 2 2 它的枚举中没有显示 Exchange 版本 2016 我可以看到 Exchange 2013 之前的版本 那么如何连接到 Exchange Server 2016 该 API 是否尚未从 Micro
  • Android - 保持用户登录状态

    我正在尝试使用 PHP 和 MySQLi for Android 进行登录 我不明白的是如何保持用户登录状态 我看到一个简单的教程 其中有人使用 SQLite 来保护信息 但我不知道这是否真的安全 如何保存用户信息以保持用户登录状态 谢谢
  • 将enable_nestloop设置为OFF有哪些陷阱

    当我的表中有大量行时 我的应用程序中有一个查询运行得非常快 但是 当行数适中 既不大也不小 时 相同的查询运行速度会慢 15 倍 解释计划显示对中等规模数据集的查询正在使用嵌套循环其连接算法 大数据集使用散列连接 我可以阻止查询规划器在数据
  • MySQL 连接逗号分隔字段

    我有两张桌子 第一个表是batch在字段 batch 中包含逗号分隔的学生 ID 的表 batch id batch 1 1 2 2 3 4 第二个表是分数 marks id studentid subject marks 1 1 Engl
  • 注解和装饰器有什么区别?

    我很困惑何时使用术语注释以及何时使用装饰器 Component selector tabs template export class Tabs 装饰器对应于在类上调用的函数 而注释是使用 Reflect Metadata 库在类上设置的
  • 如何在 flutter 中用动画 POP

    我正在触发 Navigator pop 事件 并且想要淡出到页面的过渡 我尝试过 Fluro 但没有尝试过 我对实施它不感兴趣 这就是我正在做的 Widget build BuildContext context return Scaffo
  • “if”在 ASP.NET MVC View (.aspx) 文件中被认为有害?

    我记得看到一个博客 或其他内容 说你不应该在 ASP NET MVC 的 aspx 文件中使用 但我不记得它说的替代方案是什么 有人记得看过这个并指出我吗 基本上 这意味着您的视图中不应该有大量的 if 语句 您的控制器和视图模型应该能够处
  • 对数据框的行进行排序

    我有以下数据框 adjusted RFC df Node Feature Indicator Scaled Class Direction True False 0 0 km lt 0 181 class 4 0 gt 1 NA 125 1
  • 导入 CSS 文件时出现“找不到所需模块”的流程

    当我尝试通过 webpack import index css 导入 CSS 时 出现此错误 3 import index css index css Required module not found 我有一个类似 ComponentNa
  • jQuery 在提交的数据中附加一些奇怪的字符串

    重现该bug的代码 在html页面中放入以下代码并读取Fiddler中提交的数据 jQuery 1 4 2工作正常 问题发生在1 5 1和1 5 2
  • maven 构建 OSGi 的问题(包括依赖项)

    我目前正在从 OSGi iPOJO 和 iPOJO Annotations 开始 并尝试构建一个要在 Felix 中部署的简单组件 不幸的是 我遇到了各种问题 这些问题需要我花几个小时才能解决 或者在浪费时间后我什至无法解决 如下所示 我想
  • 通过 powershell 获取压缩的 TFS 2015 (vNext) 构建输出日志(就像构建后的下载链接一样)

    我想知道是否有人有一个 PowerShell 脚本 可以通过 TFS 2015 vNext 的 Rest API 下载此构建 ID 的所有当前构建日志 直到当前步骤 为每个记录的构建步骤创建单独的文本文件 并压缩所有文本文件 或者 如果已经
  • 在React-native中,如何更改NavigatorIOS的样式

    在react native中 如何更改NavigatorIOS的样式 例如背景颜色 谢谢你 var speedNews React createClass render function return
  • 从 Activity 调用选项卡式片段方法

    我有一项活动由三个片段组成 这些片段使用使用 PagerAdapter 的操作栏选项卡 我想要做的是从主活动访问活动选项卡式片段中的方法 我已经尝试了下面的代码 但这只是将片段返回为空 所以我猜它无法在选项卡中找到它 NPListFragm
  • R markdown 引文标识符

    R markdown 允许使用 YAML 元数据部分中的参考书目元数据字段指定参考书目文件 例如 title Sample Document output html document bibliography bibliography bi
  • 将非算术类型作为参数传递给 cmath 函数是否有效?

    给定以下用户定义类型S具有转换功能double struct S operator double return 1 0 以及以下调用cmath http en cppreference com w cpp header cmath使用类型的
  • 导入 Haskell 模块

    我是哈斯克尔的新手 为什么当我尝试使用时Days from Data Time我收到此错误 Could not find module Data Time It is a member of the hidden package time
  • 使用 keyup 事件仅触发表单验证中文本框的部分规则,并取消其余规则的事件

    我的应用程序中有一个表单 我正在使用 jQuery 表单验证插件对其进行验证 其中一项规则是远程类型 用于验证用户名是否不存在 我已经能够覆盖 onkeyup 事件 因此规则不会为我输入的每个字母发送到服务器 我完成的方式如下 var va
  • CLion 2019.2.1 工具链:未找到 WSL

    我通过 Windows 商店安装了 Ubuntu 然后按照此处的 Jetbrains CLion WSL 设置指南进行操作 https www jetbrains com help clion how to use wsl developm
  • 设计 Javascript 前端 <-> C++ 后端通信

    在我最近的将来 我将不得不制作一个具有 C 后端和 Web 前端的系统 要求 目前 我对此了解不多 我认为前端将触发数据传输 而不是后端 所以不需要类似 Comet 的东西 由于在该领域的经验可能很少 我非常感谢您对我所做的设计决策的评论