LibQQt系列之十三《QQtWebAccessManager》

16 篇文章 4 订阅

简介

QQtWebAccessManager主要用于管理http session和cookie,
管理session是QQtWebAccessManager独特添加的功能,
管理cookie是QNetworkAccessManager自带的功能。

使用方法

QQtWebAccessManager的通信过程包括 用户设置request,调用session相关的request,处理session相关的response,在response里处理下带cookie的问题等以上过程。
在response函数里,这个函数只有一个,关联finish信号,里面包含很多session的返回,用户自行处理有用的数据。+cookie

包含的组件

  • QQtWebAccessManager
    他主要承担的作用是管理Session。
    这个主要类继承QNetworkAccessManager,封装一层,函数调用不再返回QNetworkReply而是返回QQtWebAccessSession。
  • QQtWebAccessCookieJar
    顾名思义,这个类用于设置cookie组。这个类可以为多个url保存cookie组,功能强大。
  • QQtWebAccessSession
    这个是一次http请求的会话。

讲讲cookie

一般是启动的时候,发一个请求过去,或许带一个无用的cookie,或许不带,一般不带。
服务器会发回一个cookie,这个有用持续的使用这个cookie,本地QQtWebAccessManager自动存到cookieJar。
在以下步骤,
服务器会根据会话的组织规律的更换cookie,保存到这个本地的持续cookieJar里就行了,QQtWebAccessManager自动保存。
每次发射新请求的时候,带上这个刚刚保存的cookie。
其实,多数时候用户不必关心cookie,在QQtWebAccessManager里面自己保存着就好了。
需要注意的是携带cookie的请求的类型,有的是get有的是post都有可能的。
但是,当服务器约定客户端在请求中使用了用户当时设置的pair,用cookie加在request里,这个时候用户就需要从QQtWebAccessManager获取cookie,把新加的加进去。
用户不必要处理每个request的cookie,只需要处理QQtWebAccessManager的cookieJar里的就行了。
只要服务器重视这个cookie,那么肯定正常使用的。
注意:cookie都是和请求链接关联的。
一般服务器把很多请求都和一个相同的cookie联系,也有的服务器会把cookie和每个请求都不同的联系,这个随意,前边这种简单实用,会话组织思路清晰,目的明确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值