我想实现一个同时支持多个客户端的非阻塞HTTP/REST服务器,我想知道是否有任何API能够很好地完成这项工作,或者什么是最好的方法实现这个服务器关于线程和使用基本套接字的一些意见,绑定和监听函数或其他更好的软件。 我已经在过去使用绑定侦听和其他基本的C的东西,但我想知道是否有其他更好的选择存在。在C/C++中实现http服务器的易于使用和完整的api用C++实现服务器的最佳方式
回答
Libmicrohttpd。这很简单,似乎是一个很好的选择。 http://www.gnu.org/software/libmicrohttpd/
Boost有some great asynchronous IO support。其中一个教程是一个TCP服务器。
我在考虑Boost.thread和Boost.asio,但是有没有对boost的支持?或者我可以使用什么来处理http请求? – exilonX
显然不是,但[这个问题]的答案(http://stackoverflow.com/questions/1430495/perform-a-simple-http-request-using-c-boost-via-a-proxy)提及[卷曲](http://curl.haxx.se/)作为一种可能性...对不起,我只是不太了解一个完整的HTTP客户端的实现 – maditya
这似乎是一个很好的选择http:// cpp- netlib.org/# – exilonX
- 1. 在服务器中实现AutoComplete的最佳方式是什么?
- 2. 在Java中实现“服务器”类的最佳方式(Android)
- 3. 与服务器实现长期通信的最佳方式
- 4. C#实现TCP客户端服务器应用程序的最佳方式
- 5. 实现nodejs“服务”的最佳方法
- 6. 实现SFTP服务器解决方案的最佳方法?
- 7. 的最佳方式从服务器
- 8. 最佳方法建议:基于C#的Windows服务实现
- 9. 实现OpenID服务器(最好是Ruby)的最佳方式是什么?
- 10. 什么是实现web服务登录的最佳方式?
- 11. 实现位置更新服务的最佳方式
- 12. 在Python中实现Web服务的最佳方式是什么?
- 13. 部署Thrift Java服务实现的最佳方式是什么?
- 14. 使用MarionetteJs实现双(服务器端)渲染的最佳方式是什么?
- 15. 以C#实现定时器Rest API的最佳方式
- 16. 让我的服务器实现电汇的最佳方式是什么?
- 17. 实现通用Web服务API的最佳方法
- 18. 实现移动商务应用程序的最佳方式
- 19. 实现MPMoviePlayer超时的最佳方式
- 20. 实现此UI的最佳方式?
- 21. 实现标签页的最佳方式
- 22. 实现livescroll的最佳方式
- 23. 使用WCF实现服务器端重定向的最佳方法REST
- 24. 在WAMP Web服务器上使用PHP实现Rest API的最佳方法
- 25. 从PHP调用C#web服务的最佳方式
- 26. 等待WCF服务的最佳方式?
- 27. 服务栈请求实现搜索的最佳方法
- 28. C++ NTP服务器实现
- 29. 调用两个数据库服务器的最佳方式
- 30. 最佳方式使用ZeroRPC Heroku的服务器
我可以看到有很多用于提升的http服务器的示例: http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/examples.html 您是否认为提升libmicrohttpd是一个更好的选择,提升?如果是的话为什么? – exilonX
对不起,不熟悉boost。 –