Передача учётной записи Indy в OnProxyAuthorization
Используйте событие проверки подлинности прокси TIdHTTP, чтобы предоставить учётную запись, когда механизм проверки подлинности запрашивает её у приложения.
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.