使用Indy10的网友请帮忙看看 |
缺席
|
yyu10
中階會員 發表:9 回覆:99 積分:96 註冊:2005-02-18 發送簡訊給我 |
请网管谅解, 刚才测试发现可以用GB发贴. 这是重发两天前的一个贴, 希望有更多回应. ******************************************************************** 我有一个Delphi用户程序, 通过TIdHttp与服务器交换数据. 在公司使用时, TIdHttp控件往往需要通过Http代理服务器与外面打交道. TIdHttp和代理服务器建立连接时有个Authentication的过程. 开发程序时候用的是Indy9, TIdHttp控件支持的Basic Authentication已经够用了. 现在公司要求用NTLM Authentication.我安装了Indy10.0.52, 试了TIdAuthentication的几个子类, 没有成功. 请在Indy10中用过NTLM Authentication的网友指点一下迷津, 特别是如何使用TIdNTLMAuthentication 和 TIdSSPINTLMAuthentication 这两个类. 或者在哪儿能找到相关的例程, Delphi, BCB都行. 谢谢.
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
yyu10
中階會員 發表:9 回覆:99 積分:96 註冊:2005-02-18 發送簡訊給我 |
我在7个论坛发了这个贴, 第一次有回应, 心跳加速ing. 言归正传, 我在网上搜索了一段时间, 能找到唯一一个比较完整的范例如下:
http://blogs.slcdug.org/mabster/archive/2004/08/25/480.aspx 我的测试程序不在家中, 没法post, 基本结构与上例一样 procedure TForm1.IdHTTP1SelectAuthorization(Sender: TObject;
var AuthenticationClass: TIdAuthenticationClass;
AuthInfo: TIdHeaderList);
begin
AuthenticationClass := TIdSSPINTLMAuthentication;
end; procedure TForm1.IdHTTP1Authorization(Sender: TObject;
Authentication: TIdAuthentication; var Handled: Boolean);
begin
Handled := False;
end; procedure TForm1.Button1Click(Sender: TObject);
begin
......
IdHttp1.Post(url_str, FCpStream, FInStream);
ShowMessage(IntToStr(IdHttp1.ResponseCode));
......
end; // somewhere in the init section
with FHttp.ProxyParams do
begin
BasicAuthentication := False;
ProxyServer := proxy_server;
ProxyPort := 3128;
ProxyUsername := '';
ProxyPassword := '';
end; 测试结果: ResponseCode总是407(Authentication failed), 即使设置ProxyUserName和ProxyPassword也没有区别. 不清楚错在哪儿, 还是有其它设置, 请多多指教.
|
yyu10
中階會員 發表:9 回覆:99 積分:96 註冊:2005-02-18 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |