WebScarab关键源码分析(3)(续)
来源:互联网 发布:飓风雾化器做芯数据 编辑:程序博客网 时间:2024/05/17 01:10
接上篇。
接下来是两个if,如果接收到的是401或者407返回码(其含义分别为需验证和代理服务器需验证),则重新调整验证信息,并在下一个while里继续请求内容。
再一个是判断如果request使用的是head方法,则setNobody(),因为head方法是不可能有内容部分的,调用setnobody后未读取的输入流_in将不会再尝试读取。
接着判断connect域的内容,如果是不是keep-alive,则表示请求完成后连接应该释放,此时将_in和_out置空,表示这该对象“认为”这两个流是已经释放的了。但实际上还并没有释放,因为_in里还有内容没有flush出来。
如果是keep-alive,则记录lastrequesttime为当前时间,这个时间在判断一个socket是否为有效socket时会用到,详见此类中的invalidsocket方法,逻辑较简单,不再赘述。
随后如果响应中不含有401或者407返回码,循环退出,返回此reponse对象。
至此方法结束,对于此类的行为分析也差不多可以结束了。
- WebScarab关键源码分析(3)
- WebScarab关键源码分析(3)(续)
- Webscarab关键源码分析(1)
- Webscarab关键源码分析(2)
- WebScarab关键源码分析(4)
- WebScarab关键源码分析(5)
- WebScarab安装(菜鸟)
- 编译安装OWASP WebScarab(高级)
- 编译OWASP WebScarab (续)
- netmap源码分析(二)内核态关键结构的初始化
- iText生成PDF的关键源码分析
- StringBuffer/StringBuilder/String关键点源码分析
- org.osgi.core关键源码分析
- __mt_alloc源码分析(3)
- iptables源码分析(3)
- uboot源码分析(3)
- uboot源码分析(3)
- uboot源码分析(3)
- 日期控件My97DatePicker使用实例
- SQL函数说明大全
- MFC中的定时器SetTimer的使用
- SHELL脚本的基础知识3——更多结构化命令
- oracle 索引
- WebScarab关键源码分析(3)(续)
- SHELL脚本的基础知识2——使用结构化命令
- Linux 用命令行查看硬件信息
- hibernate分页查询的实现
- 如何使用Delphi设计强大的服务器程序
- shell脚本的基础知识1:基本脚本的编译
- S3C2440从 NAND FLASH 启动原理
- oracle extract截取时间值函数
- WebDriver 里的拖拽实现