Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Indy и SSL. есть еще недоработки?  [new]
Pcrepair
Member

Откуда:
Сообщений: 614
Добрый день. Есть в общем стандартный код загрузки https страницы

procedure LoadUrl(const aUrl:string; var IsPageLoaded:Boolean; var HtmlCode:string);
var
  ServerCharset:string;
  Buffer: TBytes;
  fIdHttp:TidHTTP;                    
  fSSL:TIdSSLIOHandlerSocketOpenSSL; 
  fStream: TMemoryStream;             
begin
  fIdHttp := TIdHTTP.Create(nil);              
  fSSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);    
  //fSSL.SSLOptions.Method:=sslvTLSv1;
  fStream := TMemoryStream.Create;
  try
    try
      fIdHttp.IOHandler:=fSSL;  
      fIdHttp.Request.UserAgent:=GetRandomUserAgent;
      fIdHttp.ConnectTimeout:=30000;
      fIdHttp.ReadTimeout:=30000;
      fIdHttp.HandleRedirects:=True;
      fIdHttp.Request.Connection :='keep-alive';

      fIdHttp.HTTPOptions:=fIdHttp.HTTPOptions+[hoNoParseMetaHTTPEquiv];
      fIdHttp.Get(aUrl,fStream);
      ServerCharset:=AnsiLowerCase(fIdHttp.Response.CharSet); 

      fStream.Position:=0;         
      SetLength(Buffer,fStream.Size);
      fStream.Read(Buffer[0],Length(Buffer));

      HtmlCode:=(CodePageConvert(Buffer, ServerCharset));
      IsPageLoaded:=True;
    except
      on E:Exception do
      begin
        HtmlCode:=aUrl+#32+#32+#32+E.Message;
        IsPageLoaded:=False;
      end;
    end;
  finally
    FreeAndNil(fIdHttp);
    FreeAndNil(fSSl);
    FreeAndNil(fStream);
  end;
end;


и все работает
кроме сайта https://aftershock.news/
там вместо хтмл-кода страницы грузится :
‹
Вопрос: никто не в курсе что это за ерунда?
5 янв 18, 16:49    [21083437]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Ghost Writer
Member

Откуда: Россия
Сообщений: 723
gzip
5 янв 18, 17:02    [21083468]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Dimonka
Member

Откуда:
Сообщений: 958
Надо что-то вроде:

          if (header.ContentEncoding = 'gzip') or (header.ContentEncoding = 'deflate') then
            DecompressGZip(fStream);
5 янв 18, 17:09    [21083487]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Vizit0r
Member

Откуда:
Сообщений: 464
все проще намного

  fElkaIdCompressorZLib : TIdCompressorZLib;
  fElkaIdHTTP : TIdHTTP;
...
  fElkaIdHTTP.Compressor := fElkaIdCompressorZLib;

и вперед.
5 янв 18, 20:14    [21083776]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Pcrepair
Member

Откуда:
Сообщений: 614
Vizit0r, спасибо, оказывается ктото гдето непонятно зачем до сих пор ставит сжатие. и это в 21 веке
6 янв 18, 08:40    [21084278]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Vizit0r
Member

Откуда:
Сообщений: 464
это просто кто-то балованый.
Достаточно посидеть совсем чуть-чуть на инете 2G либо еле шевелящимся спутниковом - и сразу вопросы про 21 век и gzio отпадут.
6 янв 18, 09:51    [21084297]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 195
Vizit0r
это просто кто-то балованый.
Достаточно посидеть совсем чуть-чуть на инете 2G либо еле шевелящимся спутниковом - и сразу вопросы про 21 век и gzio отпадут.

+1
достаточно выехать за пределы любого города километров эдак на 100, особенно в Сибири, и стабильный 2G будет за счастье ))))
6 янв 18, 14:20    [21084532]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 11557
Pcrepair
зачем до сих пор ставит сжатие

Разве так странички не быстрее грузятся?
Может ещё всякие кэширования поотключать?
8 янв 18, 15:47    [21087696]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Pcrepair
Member

Откуда:
Сообщений: 614
ага, поотключать
еще лутше делать уже страницы в ХТМЛ5, жабаскрипт не использовать, с картинками поаккуратнее, и прочий мусор(флеш) удалить
тогда и страница не будет весить 5 мб
8 янв 18, 19:36    [21088042]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 44070

Pcrepair
тогда и страница не будет весить 5 мб

Твои б слова, да "десигнерам" в уши...

Posted via ActualForum NNTP Server 1.5

8 янв 18, 19:43    [21088061]     Ответить | Цитировать Сообщить модератору
 Re: Indy и SSL. есть еще недоработки?  [new]
Vizit0r
Member

Откуда:
Сообщений: 464
Pcrepair
ага, поотключать
еще лутше делать уже страницы в ХТМЛ5, жабаскрипт не использовать, с картинками поаккуратнее, и прочий мусор(флеш) удалить
тогда и страница не будет весить 5 мб


это было бы идеально.
8 янв 18, 21:18    [21088249]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить