要實現一個REST服務,我需要異步C++ HTTP框架,這是基於反應器或前攝模式。我認爲增強asio套接字是一個很好的異步TCP/UDP框架,但它缺乏HTTP支持。任何人都可以推薦一個?有異步C++ HTTP框架嗎?
2
A
回答
1
另外,我可以建議你cURLpp的C++包裝與libcurl http://curlpp.org/
0
ffead-cpp提供支持REST和SOAP的基於網絡的服務支持,嵌入式Web服務器,Apache模塊,ORM和其他許多奇妙的功能。看看主頁..
2
新!回答一個老問題。該庫提供了HTTP和WebSocket的支持,它的界面設計,以消除學習曲線如果你已經知道短耳: https://github.com/vinniefalco/Beast
下面是使用該庫的完整的示例程序:
#include <beast/http.hpp>
#include <boost/asio.hpp>
#include <iostream>
#include <string>
int main()
{
// Normal boost::asio setup
std::string const host = "boost.org";
boost::asio::io_service ios;
boost::asio::ip::tcp::resolver r(ios);
boost::asio::ip::tcp::socket sock(ios);
boost::asio::connect(sock,
r.resolve(boost::asio::ip::tcp::resolver::query{host, "http"}));
using namespace beast::http;
// Send HTTP request using beast
request<empty_body> req({method_t::http_get, "/", 11});
req.headers.replace("Host", host + ":" + std::to_string(sock.remote_endpoint().port()));
req.headers.replace("User-Agent", "Beast");
write(sock, req);
// Receive and print HTTP response using beast
beast::streambuf sb;
response<streambuf_body> resp;
read(sock, sb, resp);
std::cout << resp;
}
相關問題
- 1. 有人知道Tornado web框架的異步CouchBase客戶端嗎?
- 2. 異步框架TaskEx.Delay問題
- 3. Yii框架異步請求
- 4. c#異步http請求
- 5. Objective-C異步http請求
- 6. 異步HTTP的好處有什麼好處異步HTTP
- 7. zend框架中的異步和異步請求的URL
- 8. 具有異步http的多層架構應用程序
- 9. 異步架構
- 10. 實體框架7異步收藏
- 11. iPhone/iOS異步多人遊戲框架?
- 12. 任何Java異步跟蹤框架?
- 13. 結合異步代碼和syncronous框架
- 14. Android異步任務框架動畫
- 15. 測試Microsoft Bot框架異步回覆
- 16. 實體框架6和異步()性能
- 17. 異步尋呼與實體框架6.1.3
- 18. 異步調用到實體框架
- 19. 異步pdf生成播放框架
- 20. C++異步HTTP庫來下載文件
- 21. C++ Linux異步HTTP POST(Boost :: asio)
- 22. Ruby異步網:: HTTP?
- 23. PHP有響應的異步HTTP請求
- 24. 是否所有實體框架方法都使用異步?
- 25. 是否有Python的異步非網絡I/O框架?
- 26. 與擁有者框架異步打開JDialog的問題
- 27. 什麼C++ HTTP框架可用?
- 28. Materializecss框架有沒有步進器?
- 29. C++同步和備份框架
- 30. C#異步/等待寫入文本框
您可能會感興趣在[這個問題](http://stackoverflow.com/questions/746309/which-is-the-best-c-web-framework) – 2011-02-18 09:08:47