пятница, 10 сентября 2010 г.

Реализация NTLM в Indy 10

Заметка на память.
{$APPTYPE CONSOLE}

uses
SysUtils,
IdAuthentication,
IdAuthenticationNTLM,
IdHTTP;

type
TDummyProxy = class
private
class procedure OnProxyAuthorization( Sender: TObject;
Authentication : TIdAuthentication; var Handled : Boolean );
end;

{ TDummyProxy }

class procedure TDummyProxy.OnProxyAuthorization(Sender: TObject;
Authentication: TIdAuthentication; var Handled: Boolean);
begin
Authentication.Reset;
Authentication.Username := '...';
Authentication.Password := '...';
Handled := true;
end;

begin
with TIdHTTP.Create( nil ) do
try
OnProxyAuthorization := TDummyProxy.OnProxyAuthorization;
ProxyParams.ProxyServer := '...';
ProxyParams.ProxyPort := 3128;
ProxyParams.BasicAuthentication := false;
HTTPOptions := HTTPOptions + [ hoInProcessAuth ];
WriteLn( Get('http://ya.ru') );
finally
Free
end;
end.

1 комментарий:

Анонимный комментирует...

все равно выдает ошибку 407