我的c ++ server-app需要打开一个端口80才能输出一些json (对于其他网络应用程序来查看状态)
我看到一些我可以从c ++类中学习的Web服务器,但它们看起来相当复杂。我不需要任何请求/响应,只是一个字符串,我按时更新,然后显示在端口80上。
我的服务器应用程序正在循环运行,所以我想这应该是一个线程,每次都会获得字符串更新。请指出我正确的方向,我的计划/思考完全错了。
答案 0 :(得分:4)
最简单的解决方案可能是使用网络服务器来提供静态文件,让应用程序在需要时更新内容。
请注意服务器的配置,以通知客户端不应缓存内容。
另一个有点重要的部分是创建一个新文件并在文件完成后将其移动到目标(已发布)位置(以避免客户端下载可能无效的部分文件)。
答案 1 :(得分:0)
您可以在C ++应用程序中使用某些HTTP服务器库,例如libonion(或者Wt或libmicrohttpd)。
请注意,libonion
通常在其他某个线程中运行Web服务,因此您需要处理同步(例如使用互斥锁),并且还能够提供静态内容和静态文件。