TIdHTTP предоставляет OnProxyAuthorization для момента, когда механизм проверки подлинности прокси запрашивает у приложения учётную запись. Обратный вызов получает объект TIdAuthentication и результат Handled:

procedure TForm1.IdHTTP1ProxyAuthorization(Sender: TObject;
  Authentication: TIdAuthentication; var Handled: Boolean);
begin
  Authentication.Username := 'PROXY_USER';
  Authentication.Password := 'PROXY_PASSWORD';
  Handled := True;
end;

Используйте модуль IdAuthentication для типа и назначьте этот метод событию OnProxyAuthorization компонента HTTP. Замените значения-заполнители на учётную запись, которую предоставляет логика учётных данных приложения.

Возврат Handled=true позволяет механизму проверки подлинности продолжить с этими значениями. Верните false, когда пользователь отменяет действие или приложение отказывается предоставить учётные данные.

Конечная точка прокси по-прежнему относится к конфигурации ProxyParams компонента. Обратный вызов участвует в обмене выбранной схемы; ему не нужно самостоятельно вычислять заголовок Basic или NTLM.

Похожие статьи