今日计划

1、用Indy实现HTTP协议下载新浪首页文本——OK
2、用Indy实现HTTP协议下载普通文件——OK
3、开新线程用Indy实现HTTP协议下载新浪首页文本——OK
4、开新线程用Indy实现HTTP协议下载新浪首页文本,并保证线程安全——OK
5、获得远程文件大小——OK
memo:需要用GET,在获得回应中取出Content-Length。阅读HTTP协议中……
memo:在TIdHTTP中发现了Response,其中包含有属性ContentLength
result:先Connect到服务器,然后利用Head方法和Response完成任务。
6、用TCP客户端实现连接和断开——OK
7、用TCP客户端实现命令的发送和接受——FAILED
memo:用于发送HTTP协议中的命令,下降一个层次来学习
result:用www.sina.com.cnwww.cnblogs.com作为实验对象,发现直接用HTTP来实验TCP/IP的命令发送与接受非常困难。决定暂缓这种测试办法,改为研究TIdHTTP的功能,回到HTTP的层次来看怎么获得GET命令反馈的那些文件信息。而TCP/IP命令的发送与接受改用自写服务器的办法双向调试。
8、追踪下载的过程——OK
memo:用IdConnectionIntercept截获了发送和接收,但是形式却是TStream,苦恼中……
result:直接注册OnWork事件就OK了
9、利用白天所学会的,制作一个简单的下载工具,并且用一个ProgressBar显示下载的进度——OK
memo:额外的关注了了过多的URL解析方面的工作,决定暂停这个节外生枝的方面
memo:后来发现有一个URIParse,看来Indy是把一切都给打理好了……
result:https://files.cnblogs.com/taowen/SimpleHTTPDonwloader.rar
原文地址:https://www.cnblogs.com/taowen/p/28209.html