Jump to content
RTollison

idhttp.post idcompressorzlib

Recommended Posts

i have seen lots of examples for get and decompress of data but nothing really for compress and post. after creating the idCompressor and assigning it to the idHTTP what needs to happen to compress the sRequest FileStream?

 

      sRequest and sResponse are TFileStreams
...
      idHTTP := TidHTTP.Create;
      idCompressor := TidCompressorZLib.Create(idHTTP);
      idHTTP.Compressor := idCompressor;
      idHTTP.ConnectTimeout := 60000;
      idHTTP.HTTPOptions := [hoKeepOrigProtocol,hoForceEncodeParams];
      idHTTP.ReadTimeout := 60000;
      idHTTP.HandleRedirects := True;
      idHTTP.IOHandler := SSLHandler;
      idHTTP.Request.BasicAuthentication := false;
      idHTTP.Request.CustomHeaders.Values['Authorization'] := 'Bearer ' + _token;
      idHTTP.Request.ContentType := string(aContentType);
      idHTTP.Request.CharSet := string(aCharSet);
      idHTTP.Post(trim(string(aURL)), sRequest, sResponse);

 

Share this post


Link to post

At this time, TIdHTTP does not support compressing requests, only decompressing responses. You would have to manually compress your post stream yourself and then set the TIdHTTP.Request.ContentEncoding header accordingly.

Share this post


Link to post

cool thanks. probably why i never found sample code. but i did see the zlib examples and will go that route. gzip

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×