Вверх ↑
Ответов: 4630
Рейтинг: 749
#1: 2020-11-10 16:44:37 ЛС | профиль | цитата
Возможно из-за того что редиректит из https на http. Может Windows API этого не допускает или есть какой-то параметр для разрешения. Пока не могу разобраться.
Вообще, странное поведение. OnRedirect показывает редирект на 'https', а окончательный результат останавливается на 'http://www.'. Может быть превышено количество редиректов. Или на 'https' переходит успешно, а оттуда на 'http://www.' - нет.


О, нашел: https://docs.microsoft.com/en-us/windows/win32/winhttp/option-flags

WINHTTP_OPTION_REDIRECT_POLICY

WINHTTP_OPTION_REDIRECT_POLICY_DISALLOW_HTTPS_TO_HTTP
All redirects are followed, except those that originate from a secure (https) URL to an unsecure (http) URL. This is the default setting.

В файле hiHTTPClient.pas после
if _prop_AutoRedirect = 0 then
SetHTTPOptionDWord(FHRequest, WINHTTP_OPTION_DISABLE_FEATURE, WINHTTP_DISABLE_REDIRECTS);

добавь такое и проверь:
SetHTTPOptionDWord(FHRequest, WINHTTP_OPTION_REDIRECT_POLICY, WINHTTP_OPTION_REDIRECT_POLICY_ALWAYS);

карма: 26

1
Голосовали:Joiner
Редактировалось 4 раз(а), последний 2021-06-10 11:03:35