从websocket到WinSock的奇怪连接消息

时间:2019-04-19 09:29:34

标签: javascript c++ websocket winsock

编辑:将CONNMSG的大小设置为[0]时,我现在可以根据需要获取消息。这样,我不再看到HTTP标头。 Image with Correct messages


我有一个c ++桌面软件,我将其视为server,因为没有它,我的浏览器端软件将毫无意义。我正在使用WinSock将消息发送到/localhost:1111,并且可以使用c ++客户端实例读取该消息。

现在,当我初始化c ++服务器并使用websocket客户端连接到同一主机(localhost:1111)时,我将在服务器控制台上收到以下消息:

没有我的留言的图片 Image without my message

在上述情况下,我的连接消息大小设置为1024,而我发送给客户端的消息则未显示。 如果我将其设置为如下所示的256,则消息的格式被破坏,并且我的消息被压缩在其中的某个位置,如下图所示:

带有我的留言的图片 Image with my message

我不确定是否应该共享服务器端代码或客户端代码。但我认为问题出在以下代码中:

char serverMessage[128] = "MY MESSAGE";
if (newConnection == 0)
{
    std::cout << "Failed to accept the client's connection." << std::endl;
}
else //If client connection properly accepted
{
    char CONNMSG[1024];
    while(true){
        recv(newConnection, CONNMSG,sizeof(CONNMSG),NULL);
        send(newConnection, serverMessage, sizeof(serverMessage), NULL);
        std::cout<< CONNMSG<<std::endl;
        if(!newConnection){
            std::cout<<"Client Disconnected"<<std::endl;
            break;
        }
        Sleep(1000);
    }
}

0 个答案:

没有答案