manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(showTextFromWeb(QNetworkReply*)));//http响应
this->connect(ui->refresh, SIGNAL(clicked()), this, SLOT(showText())); //确认请求地址,发起http请求
void LoginHttp::showText()
{
QString url = ui->url_edit->text();
reply = manager->get(QNetworkRequest(QUrl(url)));
}
void LoginHttp::showTextFromWeb(QNetworkReply *reply)
{
QJsonParseError jsonError;
// qDebug()<<QString(reply->readAll());
QJsonDocument doucment = QJsonDocument::fromJson(reply->readAll(),&jsonError); // 转化为 JSON 文档
if(!doucment.isNull()){
ui->tableWidget->clearContents();
QJsonArray array = doucment.array();
int nSize = array.size(); // 获取数组大小
for(int index = 0;index<nSize;index++)
{
QJsonObject item = array.at(index).toObject();
insert_tab(item.value("desc").toString(),item.value("ip").toString(),item.value("port").toInt());
}
}
}