Chinaunix首页 | 论坛 | 博客
  • 博客访问: 371973
  • 博文数量: 50
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 641
  • 用 户 组: 普通用户
  • 注册时间: 2014-05-09 22:35
个人简介

不怕你失败,就怕你爬不起来。

文章分类

全部博文(50)

文章存档

2014年(50)

我的朋友

分类: C/C++

2014-08-22 02:20:43

第一次接触Qt的Http项目,今天看了一下Post和Get的基本使用方法,就开始尝试了。原先以为Post专门用于向服务器发送请求,然后接收服务器应答的; 而Get只是单纯从服务器获取资源,比如下载这个网页,获得网页上存储的资源等。但是做项目的时候,测试的结果彻底地证明了我的天真和误解.

事实上,Post和Get都是用于向服务器发送请求的,两者都可以带参数,只不过方式略有不同而已。不同之处就在于,Get将参数直接与网址整合为一个整体,而Post则将其拆为两个部分,一部分是网址,另一个部分才是参数,并且必须为其设置报文setHeader,否则服务器是无法找到参数的。

而所谓的获取资源或者接收服务器应答,则并非由它们二者实现的,而是由QNetworkRequest向QNetworkAccessManager发送请求,由QNetworkReply从QNetworkAccessManager接收应答,最后由QNetworkAccessManager与服务器进行交互的。可以说,Post和Get是两种请求方式,它们的操作会触发QNetworkAccessManager/QNetworkRequest/QNetworkReply三者形成的Http网络机制,或者说方法依赖于机制吧。



PS: 以上言论纯属个人见解,如有错误,请留言。

关于Get 和 Post 的详细区别可以参考CSDN的文章:http://blog.csdn.net/lslxdx/article/details/7485297

文章有些老了,使用的是已经被Qt5淘汰的QHttp类,但是仍然有很大的借鉴意义,值得一看。
阅读(2912) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~