Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++/使用Poco库的IOS WebSocket_C++_Ios_Poco_Poco Libraries - Fatal编程技术网

C++ C++/使用Poco库的IOS WebSocket

C++ C++/使用Poco库的IOS WebSocket,c++,ios,poco,poco-libraries,C++,Ios,Poco,Poco Libraries,我最近开始使用Poco库(我认为这很好),我正在尝试创建一个服务器,也可以使用socket.io-websocket的ios应用程序进行连接。我已经成功地使用了一个节点JS实现来连接,但是需要C++实现。我已经在HandlerRequest方法中实例化了websocket,但不确定接下来的步骤是什么 任何帮助都将不胜感激 virtual void handleRequest(HTTPServerRequest &req, HTTPServerResponse &resp) {

我最近开始使用Poco库(我认为这很好),我正在尝试创建一个服务器,也可以使用socket.io-websocket的ios应用程序进行连接。我已经成功地使用了一个节点JS实现来连接,但是需要C++实现。我已经在HandlerRequest方法中实例化了websocket,但不确定接下来的步骤是什么

任何帮助都将不胜感激

virtual void handleRequest(HTTPServerRequest &req, HTTPServerResponse &resp)
{
   char buffer[16384];

   WebSocket* ws = new WebSocket(req, resp);
   //ws->setKeepAlive(false);
   int flags;
   if (!ws->poll(500,Poco::Net::Socket::SELECT_READ || Poco::Net::Socket::SELECT_ERROR))
   {   
      cout << ".";
   }   
   else
   {   
       int n = ws->receiveFrame(buffer, sizeof(buffer), flags);
       if (n > 0)
       {   
           if ((flags & WebSocket::FRAME_OP_BITMASK) == WebSocket::FRAME_OP_BINARY)
           {   
               // process and send out to all other clients
           }   
       }   
   }   

}
virtualvoid handleRequest(HTTPServerRequest&req、HTTPServerResponse&resp)
{
字符缓冲区[16384];
WebSocket*ws=新的WebSocket(请求、响应);
//ws->setKeepAlive(false);
国际旗帜;
如果(!ws->poll(500,Poco::Net::Socket::SELECT_READ | | Poco::Net::Socket::SELECT_ERROR))
{   
cout receiveFrame(缓冲区、sizeof(缓冲区)、标志);
如果(n>0)
{   
if((标志和WebSocket::FRAME\u OP\u位掩码)==WebSocket::FRAME\u OP\u二进制)
{   
//处理并发送给所有其他客户
}   
}   
}   
}

下一步取决于您要做什么。一旦连接,您就有了一个开放的通道,可以用于浏览器和服务器之间的双向数据交换


有关详细信息,请参阅。

下一步取决于您尝试执行的操作。一旦连接,您就有了一个开放的通道,可以用于浏览器和服务器之间的双向数据交换

有关详细信息,请参阅