我正在考虑我编写的项目的后续步骤。它目前是一个控制串行端口设备的桌面应用程序。
我正在考虑允许浏览器客户端连接到某个进程,以获得有关设备状态等的“近实时”更新。可能还允许从浏览器客户端进行控制。
我宁愿不从头开始编写我自己的网络服务器,这将是一个非常小规模的网络服务器。
关于在哪里寻找的任何建议?
我更喜欢C ++或C#实现。
答案 0 :(得分:10)
如果您在Windows上运行,请使用http.sys。它是一个通过.NET框架公开的轻量级Web服务器。
http://mikehadlow.blogspot.com/2006/07/playing-with-httpsys.html
答案 1 :(得分:5)
我不知道任何C#http服务器,但你可以很快地自己制作(见http://www.codeplex.com/webserver)。
正如所建议的那样,lighthttpd可能会成功。
我还推荐simpleweb,这是一个用Java编写的非常轻巧和强大的http服务器。
答案 2 :(得分:5)
我从朋友那里听到关于lighthttpd
的好消息答案 3 :(得分:2)
nginx非常轻量级且可扩展性很强(例如,请参阅 Wordpress's story是一个备受瞩目的案例)。 POSIX的仅
答案 4 :(得分:2)
查看我的网络服务器项目:http://www.codeplex.com/webserver 它包含一个最小的分支。
答案 5 :(得分:2)
考虑查看System.Net.HTTPListener类。它实现了一个HTTP侦听器,可以很容易地响应来自客户端的HTTP请求。既然你不需要一个成熟的HTTP服务器,那可能就是这样!
答案 6 :(得分:2)
答案 7 :(得分:2)
这是我去年写的另一个选择,并且很好地为我服务。
EmbedIO: https://github.com/unosquare/embedio
我主要用它来在Raspberry Pi(soft-float)上创建RESTful服务。 这也是麻省理工学院的许可。
答案 8 :(得分:1)
从Visual Studio运行Web项目时,通常通过Cassini2运行它。这也是一个可下载的项目。
否则,如果你想要更小的东西,你可以看看Indy 10库(开源),这是一套完整的网络apis。您可以使用它快速编写自己的Web服务器。
或者,NSoftware也有一些网络apis。它们是商业性的,但有很好的记录,我对他们的支持有好运(但它已经有一段时间了)。
答案 9 :(得分:1)
既然你不是自己写的,它必须是一个最小的服务器吗? Apache和相关可能会达到您的目的。它是重量级的,但不了解您可能会或可能不会出现问题的更多要求。
答案 10 :(得分:1)
答案 11 :(得分:0)
我不知道是否适合您的项目,但http://www.tntnet.org/看起来很有希望。或者,您可以查找http服务器库,您可以添加自定义代码以构建嵌入了应用程序的Web服务器。有许多(比如libmicrohttpd),在不知道你的项目的情况下不值得枚举。
答案 12 :(得分:-1)
您也可以尝试使用nodejs来构建网络服务器。
有一些实例可用于实施简单的