C++中的简单网络服务器?

H4c*_*0rD 42 c++

是否有任何参考或库可以创建网络服务器(帮助)?(在C++中)

Fil*_*erg 19

您可能会发现这很有趣(SO,通过Wayback Machine),它是如何在C中创建一个与C++完全不同的Web服务器.

但是,如果您使用的是Windows和C++,则可能需要查看C++中的简单Web服务器


Ric*_*ñoz 14

您可以使用Boost Asio来执行此操作,请参阅HTTP服务器示例

  • 我相信,80%的C++答案可以将一个潜在的开发人员引导到一大堆被称为"Boost Library"的代码中.对于新的开发者来说,它是巨大的,混乱的,非常令人困惑的. (20认同)
  • "混乱"和"非常混乱"是主观的术语,在我的公司中,我们的新版本开始用一组选定的书籍和代码学习c ++,并且他们使用Boost没有问题所以"混乱"和"非常混乱"的术语不会适用于所有情况:)和巨大......你可以使用bjam只使用你需要的东西. (8认同)
  • 在某种程度上,这两种观点都是正确的.Boost中的一些模块具有极好的文档记录,并具有友好的界面.其他人被埋没在如此多的利基学术术语中,很难弄清楚模块甚至做了什么.而且,由于Boost将它们列为同等重要的,所以谁可以责怪某人认为整个收藏品一团糟. (4认同)
  • 拒绝使用Boost的人们错过了许多非常有用的代码,这些代码并不是非常有用,足以融入stdlib,但仍然非常稳固.找到一块现成的开源代码是没有比这更好的地方了.认真.话虽如此,但有一个缺点,那就是编译时间过长. (3认同)
  • @NTDLS真的吗?我几乎是100%noob,但是boost和其他几个关键库使c ++变得像php一样简单. (2认同)

thi*_*zzy 7

这里有一个新的C++ 11包装器:https://code.google.com/p/mongoosecpp/

mongoose是一个简单的C代码网络服务器.这个包装器在mongoose结构上使用C++ 11特性(例如:std :: function用于回调,而不是函数指针),还提供了一个页面调度程序,它将url模式与std :: functions相匹配


Rob*_*Rob 5

你应该看看Wt(发音为'Witty').这是一个令人印象深刻的工具包恕我直言.此外,您还可以使用Qt框架-有可用一个简单的Web服务的例子在这里.