如何使用C 在socket.io中接收数据
How to receive data in socket.io using c++
我使用c 中的socket.io有一个小项目,我需要使用node js从我的socket.io服务器接收数据,我正在使用socket.io使用qt中的c ,我在连接到socket.io服务器时有一个运行代码,但是我在qt socket.io接收器中没有接收数据。
我正在使用此代码接收数据。
//。h
private:
void OnNewMessage(std::string const& name,message::ptr const& data,bool hasAck,message::list &ack_resp);
Ui::MainWindow *ui;
std::unique_ptr<client> _io;
//。cpp
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow),
_io(new client())
{
ui->setupUi(this);
using std::placeholders::_1;
using std::placeholders::_2;
using std::placeholders::_3;
using std::placeholders::_4;
_io->connect("http://127.0.0.1:8080");
socket::ptr sock = _io->socket();
sock->on("mapping",std::bind(&MainWindow::OnNewMessage,this,_1,_2,_3,_4));
}
void MainWindow::OnNewMessage(const std::string &name, const message::ptr &data, bool hasAck, message::list &ack_resp)
{
if(data->get_flag() == message::flag_object)
{
std::string msg = data->get_map()["message"]->get_string();
}
}
连接对应于Stream套接字(TCP(,而消息符号对应于Datagram套接字(UDP(。对于TCP,您应使用readall((:
void MainWindow::connectTcp()
{
QByteArray data; // <-- fill with data
_pSocket = new QTcpSocket( this ); // <-- needs to be a member variable: QTcpSocket * _pSocket;
connect( _pSocket, SIGNAL(readyRead()), SLOT(readTcpData()) );
_pSocket->connectToHost("127.0.0.1", 9000);
if( _pSocket->waitForConnected() ) {
_pSocket->write( data );
}
}
void MainWindow::readTcpData()
{
QByteArray data = pSocket->readAll();
}
相关文章:
- 防止主数据类型C++的隐式转换
- Seg Fault Issue C++ (file IO / getline)
- 用于访问容器<T>数据成员的正确 API
- 嵌套在类中时无法设置成员数据
- 使用流处理接收到的数据
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在cuda线程之间共享大量常量数据
- 不将数据 socket.io c++(客户端)发送到 nodejs(服务器)socket.io
- 使用 Broadcast 发出的从节点服务器发送的数据不能被 C++ 套接字 IO 客户端读取
- 如何使用C 在socket.io中接收数据
- 在MPI-IO上交错来自不同处理器的二进制数据
- 哪些 IO 操作会导致在使用套接字时将完成数据包发送到完成端口
- 如何确保数据刷新到文件 IO (WriteFile()) 上的 HDD(未缓冲)
- 将每 IO 数据与基于 IOCP 的客户端配合使用
- Socket.io在IE11中以突发方式传输数据
- 如何加速包含图形数据的文本文件的io/解析
- 文件 io - 读取 C++ 中已知格式的数据
- file io-如何在c++中读取二进制数据
- 在c++服务器上处理用WebRTC (Socket.IO)捕获的视频数据