2012-01-15 6 views
6

単純なhttpサーバーライブラリにはどのような選択肢がありますか?高性能は必要ありません。むしろ、いくつかのREST/JSON通信(「API」)のための単純なものを探します。シンプルなHTTPサーバーライブラリ

マルチスレッド環境で動作する必要があり、大きなPOST要求を処理できる必要があります。

提案がありますか?私はすでにcpp-netlibを試みましたが、これは簡単な作業のためにはあまりにも複雑すぎるようです...

編集:私は本当に軽量でシンプルなものを探しています。例えば。 Rubyの世界でSinatraのように。 Pocoは重すぎる重量ライブラリの別の例です。

+1

可能重複[オープンソースのC/C++組み込みWebサーバ](のhttp:// stackoverflowの.com/questions/738273/open-source-cc-embedded-web-server) –

+1

@MK。確かにそれはありますが、それは2009年の閉じた質問です、物事は現在異なる可能性があります。 Pocoはそこにはありません。しかし、おそらく/その他/最近の質問があります! – Stefano

+0

これは本当に最近のことです。http://stackoverflow.com/questions/7980006/http-and-https-server-library-for-cをチェックしてください。 – Stefano

答えて

10

頭に浮かぶ最初のものは、ポコライブラリ(http://pocoproject.org/

クロスプラットフォームは、安定した、十分に立証されています。ライブラリ自体は必要以上のものを提供していますが、膨らみを減らすために使用する予定のない部分を作成して省略することができます。

彼らはいくつかの顕著なクラスとユーティリティを含む完全機能のネットライブラリを持っています。

ここで特に興味深いのライブラリーからスライドのPDFファイルは、HTTPServerのクラスです。 http://pocoproject.org/slides/200-Network.pdf

+0

偉大な図書館のように見えますが、私はもっと軽量なものを探しています。 – Philip

3

私はboost.asioにhttpサーバのサンプルで開始することをお勧めします。彼らはとてもシンプルで理解しやすいので、必要に応じて簡単に拡張できるはずです。

あなただけのサンプルコードよりもより洗練何かに飛び乗るしたい場合は、私はあなたが試してみたいことがあり、C++での3台のhttpサーバを知っている:

  • 「X0 - HTTP Webサーバーフレームワーク」へ私個人的にはこの一つは、それが
  • 、軽量でシンプルなので、最も有望と思われる「高パワー/ XIVA」「パイ中間子、原子力研究所のプロジェクトは」精巧なフレームワークの一部であるブラウザ
  • に通知を配信するための単純なHTTPサーバフレームワークです大量のデータを扱うためのもの
+0

ありがとう、このブーストサンプルコードは、現在私のお気に入りのソリューションです!ライブラリとしてのコードと私の望みはすべて達成されるでしょう... – Philip

+0

これらのサンプルをライブラリコードに変更することはとても簡単です: 'main main()'をスレッド関数に変えて、それ自身のスレッドで起動します。しかし、これらのサンプルは、私が前に述べたように、コネクションのソケットシャットダウンが送信されているデータを失うなど、ややこしいものではありません(訳注:等 – bronekk

0

個人的には、私はArachnida(http://arachnida.sf.net)に行くだろうが、それは私が書いたからかもしれない。

関連する問題