1. 程序

widge.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include<QtNetwork/QNetworkRequest>
#include<QtNetwork/QNetworkReply>
#include<QtNetwork/QNetworkAccessManager>namespace Ui {class Widget;
}class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();void get();void getBack(QNetworkReply * reply);private:Ui::Widget *ui;QNetworkAccessManager * manager;};#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include<QDebug>Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);manager = new QNetworkAccessManager(this);connect(manager,&QNetworkAccessManager::finished,this,&Widget::getBack);//通信完成后,自动执行getBackget();
}Widget::~Widget()
{delete ui;
}void Widget::get()
{QNetworkRequest request;request.setUrl(QUrl("https://api.66mz8.com/api/weather.php?location=北京"));manager->get(request); //发出get请求}void Widget::getBack(QNetworkReply * reply)
{qDebug()<<reply->readAll().data(); //输出响应内容,其中.data()表示转换为json格式
}

2. 注意

在此项目中,需要用到https协议来访问服务器,然而在调用服务器时却发现程序运行时,QT控制台报错如下:

qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error

解决:
在Qt目录下Qt5.4.2\Tools\mingw491_32\opt\bin 找到libeay32.dll 和 ssleay32.dll两个库文件,将这两个库文件拷贝到程序生成目录下(即生成exe的同级目录),即可。

3. 运行结果

{"code": 200,"citynm": "北京","cityno": "beijing","data": [{"days": "2021-08-05","week": "星期四","temperature": "30℃\/23℃","weather": "雷阵雨转多云","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/4.gif","wind": "东南风"},{"days": "2021-08-06","week": "星期五","temperature": "32℃\/22℃","weather": "多云转晴","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/1.gif","wind": "东北风转西南风"},{"days": "2021-08-07","week": "星期六","temperature": "33℃\/23℃","weather": "晴","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/0.gif","wind": "南风转西南风"},{"days": "2021-08-08","week": "星期日","temperature": "32℃\/24℃","weather": "多云转晴","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/1.gif","wind": "南风转西南风"},{"days": "2021-08-09","week": "星期一","temperature": "32℃\/23℃","weather": "多云","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/1.gif","wind": "东风转西北风"},{"days": "2021-08-10","week": "星期二","temperature": "31℃\/23℃","weather": "阴转多云","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/2.gif","wind": "东风"},{"days": "2021-08-11","week": "星期三","temperature": "32℃\/23℃","weather": "晴转多云","weather_icon": "http:\/\/api.k780.com\/upload\/weather\/d\/0.gif","wind": "东南风转东北风"}]
}

Qt网络编程——get请求相关推荐

  1. Qt网络编程post请求,数据格式为json或x-www-form-urlencoded

    目录 Qt网络编程post请求,数据格式为json或x-www-form-urlencoded 一..H文件 1..h头文件 2..h主代码 二..CPP文件 1.主代码 三.响应信息 返回结果(Jo ...

  2. Qt网络编程实战之HTTP服务器-安晓辉-专题视频课程

    Qt网络编程实战之HTTP服务器-30196人已学习 课程介绍         设计了一个实用的HTTP服务器,基于Qt的网络框架实现.先详细介绍Qt的网络.IO.线程..自定义事件.配置文件等类库的 ...

  3. qt网络编程之使用cookie和ssl

    文章目录 所使用的Qt版本:5.14.0 接收Cookies: 发送Cookies: 答案是:有7个(有多少个等号就有多少个cookie,每个cookie用 ; 分隔开来) 代码如下: 参考: 简 述 ...

  4. 第十四章:Qt网络编程

    回顾: 第一章:Qt的概述 第二章:在Ubuntu编写第一个Qt程序 第三章:Qt的字符串和字符编码 第四章:Qt的信号和槽 第五章:Qt容器窗口(父窗口) 第六章:面向对象的Qt编程 第七章:Qt设 ...

  5. Qt网络编程概述(一)

    分享主题 Qt网络编程概述(一) Qt网络编程之QTCPSocket和QTCPServer实例(二) Qt网络编程之QUdpSocket实例(三) Qt网络编程概述 QtNetWork模块提供了若干类 ...

  6. QT:Qt 网络编程基础

    Qt 网络编程基础 1 )网络协议层次 // linux/unix ---> 4 层  OSI ---> 7 层  应用层(应用层.表示层.会话层)  传输层(传输层) // TCP/IP ...

  7. [Qt教程] 第31篇 网络(一)Qt网络编程简介

    [Qt教程] 第31篇 网络(一)Qt网络编程简介 楼主  发表于 2013-8-28 17:04:17 | 查看: 515| 回复: 0 Qt网络编程简介 版权声明 该文章原创于作者yafeilin ...

  8. Qt网络编程之实例一GET方式

    看了两天的Qt网络编程,其实主要就是看了看QNetworkAccessManager.QNetworkRequest和QNetworkReply这三个类的主要内容.在之前,Qt网络编程主要是使用QHt ...

  9. qt android 网络编程实例,QT网络编程Tcp下C/S架构的即时通信实例

    先写一个客户端,实现简单的,能加入聊天,以及加入服务器的界面. #ifndef TCPCLIENT_H #define TCPCLIENT_H #include #include #include # ...

最新文章

  1. iOS 自定义返回按钮,保留系统滑动返回
  2. struts1-2,springMVC原理基本对比(单例,多例)-servlet与filter区别
  3. QT5生成可执行文件总结
  4. fiddler如何设置过滤https_Google Analytics如何设置含有过滤器的帐户数据视图
  5. js改变select下拉框默认选择的option
  6. Markdown案例
  7. ann matlab,MatlabANN工具箱实用指南.doc
  8. linux结构体数组的定义数组,task_struct结构体中的run_list和array域
  9. Vmware由于centos升级内核不可运行(C header files matching your running kernel were not found)的解决方案
  10. c语言字符串汇编,C语言调用汇编实现字符串对换
  11. JS 逻辑中断(二)
  12. java切割文件出现1k_java实现把一个大文件切割成N个固定大小的文件
  13. 学MySQL,这篇万字总结,真的够用了
  14. 系统角度解读Android P新特性
  15. 【转】Python之获取每日涨停板股票数据并绘制K线图!
  16. 北京杭州差距这么大?程序员在北京准点下班,在杭州12点在还加班
  17. FME助力新型基础测绘之存量测绘成果数据转换地理实体
  18. 计算机辅助设计在环境工程中的应用,试论计算机辅助设计在环境工程中的应用原稿(范文1)...
  19. 网站常用邮箱找回密码流程插件页面
  20. abe.jar工具的安装

热门文章

  1. 【ARM】仅用三个GPIO口实现串行SSI信号读取
  2. 如何在xml文件中引入约束【带解析】
  3. python随机生成IP地址
  4. 2023年5种最佳黑客编程语言
  5. 启动nacos-server报错:java.io.IOException: java.lang.IllegalArgumentException: db.num is null
  6. 机器学习:维数约减算法PCA(主成分分析法)原理、实现与应用
  7. ssh框架可以使用Ajax,基于Ajax的SSH框架的应用研究
  8. 筹码集中度90与70区别是什么?
  9. 中国休闲食品行业发展现状及前景分析,市场集中度低「图」
  10. Python爬取腾讯动漫全站漫画详细教程(附带源码)