200分跪求INDY下IdHTTP的DEMO ( 积分: 200 )

  • 主题发起人 主题发起人 canlin924
  • 开始时间 开始时间
C

canlin924

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做一个在线升级的程序,想用IdHTTP来做,找了好久都没找到这方面的资料.
我的需求是这样的:先发一个GET请求传入一个ProduceID,得到要更新的产品的最新版本号,跟本地比对后再POST用户名和密码之类的参数过去得到下载地址
 
我想做一个在线升级的程序,想用IdHTTP来做,找了好久都没找到这方面的资料.
我的需求是这样的:先发一个GET请求传入一个ProduceID,得到要更新的产品的最新版本号,跟本地比对后再POST用户名和密码之类的参数过去得到下载地址
 
http://www.projectindy.org/DemoDownloads/Indy9Demos_26Oct04.zip
 
下载不了啊.xianguo能不能直接在上面贴一份啊
 
好多分啊~~~~~
msn:m820126@163.com
QQ:29460116
加我!
 
V:=IdHTTP1.Get('Http://192.168.0.1:80/?ProduceID=123');
V是版本号

var
S:TStrings;
ST:TStream;

if compare(V,当前版本号) then
begin
S.Add('UserName='+用户名);
S.Add('Password='+密码)
//得到下载地址
Url:=IdHTTP1.post('Http://192.168.0.1:80/',S);
//下载
IdHTTP1.get(Url,ST);
end;
 
http://www.js.lss.gov.cn:7001/jsyb/SIHis/Indy9Demos_26Oct04.zip
 
iamy,谢谢你的关注.
得到版本号与本地对比那功能我已经实现了,但是我的需求是还要输入一个用户名和密码才
能从服务器返回一个下载的地址.我想问一下我用idhttp的post,通过什么方式把我的用户名
和密码这2个参数传递过去,而且参数要加密,我还要计算加密后的长度放到http头里面的
content-length去.
再请教一个很菜的问题,得到下载地址后我通过什么方法来下载,最好给出源码 ^*^
 
IdHTTP 的GET过程函数可以实现你的要求。
function TForm1.DownLoadFile(sURL,sFName:string):boolean;//sURL就是你的下载地址
var tStream: TMemoryStream;
begin
tStream :=TMemoryStream.Create;
try
try
IdHTTP1.Get(sURL,tStream);
tStream.SaveToFile(sFName);
Result :=true;
finally
tStream.Free;
end;
except
Result :=False;
tStream.Free;
end;
end;
 
procedure TMainForm.TimerTimer(Sender: TObject);
var
PostStr: TStringList;
Back: string;
begin
PostStr:= TStringList.Create;

PostStr.Add('account_id=test');
PostStr.Add('password=test');

try
Back:=IdHTTP.Post('http://www.test.cn/login.php', PostStr);
except
//错误处理
end;

end;

delphi 2005 + indy10中调试通过!indy9的操作略有不同,但基本类似!
 
最后一个问题,下载的进度如何表示出来?谢谢大家的关注.
 
procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCountMax: Integer);
begin

end;


procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin

end;


procedure TForm1.IdHTTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode);
begin

end;
 
任务完成了,散分了
 
后退
顶部