【问题标题】:C++/IOS Websockets using the Poco Library使用 Poco 库的 C++/IOS Websockets
【发布时间】:2014-02-15 11:48:52
【问题描述】:

我最近开始使用 Poco 库(我认为它很棒),并且我正在尝试使用 socket.io - websocket 的 ios 应用程序创建一个服务器来连接。我已经设法使用节点 js 实现进行连接,但需要 C++ 实现。我已经通过在 handleRequest 方法中实例化 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
           }   
       }   
   }   

}

【问题讨论】:

  • 例如:Poco::Net::Socket::SELECT_READ || Poco::Net::Socket::SELECT_ERROR 应该是 Poco::Net::Socket::SELECT_READ | Poco::Net::Socket::SELECT_ERROR 因为|| 会做布尔运算

标签: c++ ios poco poco-libraries


【解决方案1】:

后续步骤取决于您要执行的操作。连接后,您就有了一个开放通道,可用于在浏览器和服务器之间进行双向数据交换。

详情请见WebSocketServer example

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 2013-01-15
    • 1970-01-01
    • 2012-06-08
    • 1970-01-01
    相关资源
    最近更新 更多