Linux上で動作するC++コードでwebsocketサーバーを実装する必要があります。 時々、クライアントにデータを非同期にプッシュする必要もあります。C++ Websocketサーバーが開始したデータ
これまでのところ、私は獣エコーサーバー、libwebsocketテストサーバーと libonion試してみました(それは一度クラッシュしていましたが、「GNUTLSが今を中止!でコンパイルされていない場合、カントはSHA1を計算する」エラー ブラウザから接続しようとしました私はダミーのテストクラスでより多くの情報を提供しようとしています。
test.cpp
class test
{
public:
void processDataFromClient(const string & data);//this needs to get filled by websocket read method? how?
void pushDataToClient(const string & data);
};
test::pushDataToClient(const string & data)
{
(socketId, text) // how do I call this from my test.cpp ?
}
test::void processDataFromClient(const string & data)
{
//do some computation based on the text received
//turn on the light
//once Light is on for a minute call
pushDataToClient(lighton) ;
}
//websocket_server.cpp
main
{
//open a webSocket
//listen for messages from client i.e pass data received from onion_websocket_read to test class by calling processDataFromClient();
//send asynchronous messages to client received from test class. i.e. pushDataToClient should invoke onion_websocket_write //do we need a thread for this ? how to achieve this?
}
以下。しかし、私は私が上に構築することができます何を思い付くことができていない。
私はシンプルを探しています私が始めることを可能にするインターフェースwebsocketは、クライアントと非同期でデータを送受信します。
私はLinux上で動作するC++コードにHTTPリクエストを送るAngularJSで開発されたGUI /クライアントを持っています。私はそれらの要求を解析し、クライアントに応答を送る必要があります。私はあなたが送ったリンクをすばやく見ましたが、それは特定の解決策を特定していないので、私にも非常に圧倒的です。私はあなたが最初から始める必要はないC++ベースのサーバーフレームワークを提案していると思います。もしそうなら、あなたはより多くの情報でステップを提案してもらえますか? – user1867459
私はC + +のサーバーフレームワークを提案しました。あなたがAngularを使っているとすれば、JavaScriptを知っている必要があります。おそらくNodejsを最初に見て、C++の部分をプラグインすることができるかどうかを見てみましょう。もちろん、JavaであるApacheがあります。 – kmiklas
私はこのC++フレームワークに出会った。 https://github.com/corvusoft/restbedこれを使うべきかどうかはわかりません。あなたのコメントを教えてください。 – user1867459