四十六、Qt网络(六)UDP
像QQ那样,当有很多用户,发送的大部分都是短消息,要求能及时响应,并且对安全性要求不是很高的情况下使用UDP协议。发送(客户请求发送数据)
很简单,仅需QUdpSocket 的writeDatagram函数即可
void Widget::on_pushButton_clicked()
{ QUdpSocket *sender;
sender = new QUdpSocket(this);
QByteArray datagram = "hello world!";
sender->writeDatagram(datagram.data(),datagram.size(),QHostAddress("192.168.1.100"),45454);
//sender->writeDatagram(datagram.data(),datagram.size(),QHostAddress::Broadcast,45454);
// sender->writeDatagram(datagram.data(),datagram.size(),QHostAddress::LocalHost,45454);
delete sender;
}
接收(服务器端监听)
使用QUdpSocket 的bind函数监听某个端口
当监听的端口有数据到达时,QUdpSocket 的信号readyRead()就emit,然后在对应的槽函数里使用QUdpSocket 的readDatagram读取数据