問題は、Qtを備えたサーバーのアーキテクチャーについてです。たとえばReadyRead()
、ソケットが信号を送るときに呼び出されるスロットがreadyRead()
あります。いくつかの種類の要求がある場合は、次のことができます。
void Server::ReadyRead()
{
QString msg = readFirstWordFromAvaiableData();
switch (msg){
case "PING":
case "GET": // and so on
}
}
これを行う他の方法があるのだろうか。これは拡張可能で快適ではないと思います。
サーバーをJava、C、Perlなどで記述されたクライアントで動作させたい場合は、QByteArrayのみを使用する必要があります。QtDemoクライアントからのすべてのサンプルで、メッセージの前にメッセージのサイズを送信します。必要ですか?
Qtで作成されたサーバー(github、bitbucketなど)のサンプルを提案していただければ幸いです。本番サーバーがどのように配置されているかを確認したいと思います。