delphi和asp传递参数得问题(100分)

  • 主题发起人 主题发起人 lincker
  • 开始时间 开始时间
L

lincker

Unregistered / Unconfirmed
GUEST, unregistred user!
客户端用delphi做的程序,提交用户名密码给网上的asp程序,由asp完成身份认证,返回
结果,由客户端程序处理。身份认证后下载指定的文件。
客户端程序这里应该怎么设计好?
用nmhttp好像不能接受返回值吧?还望高手指点...
 
一个典型的B/S结构!呵呵
你说让客户下载嘛?符合的给她下载连接不符合的就不给,可以这样的吧:)
 
IdHTTP1可以取得
 
我不是说原理不明白,要是把asp换成数据库,我就不问了,[:D]
只是没有做过和asp的交互,所以才问,比如说,是不是要把用户名密码传给asp里的
session?那该怎么传?而且应该用什么控件?怎么接受asp传回的值?
 
请问IdHTTP1是什么控件里的?
 
IdHTTP1在 Indy Clients 页面,该控件只能接受网页的返回值,例如:
Ret := idHttp1.Get(sUrl); //sUrl 可以是 http://...?User=hryyx&pass=ddd
它不能和ASP交互,只能传入参数。
 
TIdHTTP(你说的IdHTTP1) 是著名的网络组件indy中
你还可一用ICS网络组件, 用它向ASP提交数据也很方便。
你可用它THttpCli组件,
代码片段如:
----------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);

var
DataIn : TMemoryStream;
DataOut : TMemoryStream;
Buf : String;
i:integer;
begin

DataIn := TMemoryStream.Create;
DataOut := TMemoryStream.Create;
Buf := 'Account=' + Trim(LabeledEdit1.Text) +
'&PWD=' + Trim(LabeledEdit2.Text)+
'&submit1=submit1' ;

DataOut.Write(Buf[1], Length(Buf));
DataOut.Seek(0, soFromBeginning);

httpcli1.SendStream := DataOut;
httpcli1.RcvdStream := DataIn;
// httpcli1.ProxyPort := '80';
HttpCli1.URL := Edit1.Text;
try
Memo1.Clear;
Application.ProcessMessages;
try
httpcli1.Post;
finally
DataIn.Seek(0, 0);
Memo1.Lines.LoadFromStream(DataIn);
end;
finally
DataOut.Free;
DataIn.Free;
end;
ShowMessage('登陆完毕!!!');
end;


 
请问gonghh:
用你的程序是接受生成的页面,我现在只需要asp返回一个字符串,总不能在返回的
Stream中再找我要的字符串吧?这个串可是不定的阿。
该怎么做呢?还望继续指点.
 
怎么没人?[:(]
 
这么多做delphi+asp的高手怎么没有回答啊?
分少的话可以再加200!
 
总觉得开发工具和脚本配合是个不能不类的事情!所以,要么就用开发工具,要么就单单用脚本!
 
多人接受答案了。
 
后退
顶部