Socket实现HTTP客户端
来源:互联网 发布:淘宝怎么申请客服介入 编辑:程序博客网 时间:2024/05/18 16:16
前些日子用 Wininet做项目。功能忒强大了。但总觉得管理Cookie有点不方便。即使设置了自己手动管理Cookies。这天上掉馅饼的事还真的常常发生。比如你之前用浏览器访问了这个站,留下了Cookie 你再用wininet访问的时候,这个馅饼就出现了。
封包不难 连接后。将 Headers一股脑堆进去。2个换行符后就是数据了(POST才有)。
服务器返回的数据,怎么知道长度呢?我们知道的有Content-Length头。但抓包发现。有些静态文件是没有的。它的这个长度保存在2个换行符之后。单独的一行以十六进制文本的格式保存。
比如:
HTTP/1.1 200 OK
Date: Sat, 04 Jul 2009 17:41:10 GMT
Server: Apache
Pragma: no-cache
Connection: Keep-Alive
Content-Type: text/plain
2f8
......
这里红色的2f8就是哦body的长度了。
控制连接行为的还有一个就是 Connection 头 如果是 Keep-Alive,则一次请求完毕后不要断开连接。我这里的做法是保存了上一次的域名和端口。如果上次请求有 Keep-Alive 而且域名和端口没变的情况下。没必要重新连接。
数据包的处理搞定了后。就是一些接口的封装了。在这里需要注意一些细节是。所有协议头不的单词的第一个字母是大写的。封装的时候没注意,走了不少弯路。
到这里已经基本满足我的项目需求了。用它做个QQ帐号注册器。速度飞快。也不会出现“非法访问”了。爽!
最后一个问题是编码识别和处理了。如果是 text 就必须有编码识别了。这部分还没实现。没找到好的解决办法。
注:上面的内容用易语言实现。需要源码可以联系我.
- Socket实现HTTP客户端
- Java Socket编程 - 基于Socket实现HTTP下载客户端
- socket 客户端 http
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- 用Socket类实现HTTP协议客户端应用
- C#XML读写
- Web Services的身份验证
- 【转】When you succeed with Free, you are going to die by Free
- 大荔县教育局局长张有奎充分发挥学生想象力
- html中Marquee属性详解
- Socket实现HTTP客户端
- 一根筋
- 一个关于测试的blog
- 玩透网页弹出窗口
- 在VC中链接动态链接库的方法简要说明
- 缓存技术,asp.net页面缓存
- [求教]Tabcontrol与子控件关联性问题
- 一个纸杯的测试用例
- "无法执行二进制文件“