http://www.perlmonks.org?node_id=1037632


in reply to RFC: Code testers/reviewers needed

1. $header->content_length is not available for chunked transfer (according to HTTP spec)
2. why are you mixing decoded_content and content_file ?
3. you are not checking if file downloaded correct (see mirror method in LWP::UserAgent)
4. is_success can give you false positives (but probably HEAD requests are OK in practice) https://github.com/libwww-perl/libwww-perl/issues/46 https://rt.cpan.org/Public/Bug/Display.html?id=85759
5. you can avoid HEAD requests at all - use LWP callbacks, you will be able to get length/last_mod_time before whole file is transferred

Replies are listed 'Best First'.
Re^2: RFC: Code testers/reviewers needed
by AI Cowboy (Beadle) on Jun 07, 2013 at 22:24 UTC
    All your points are good, I'll look into LWP callbacks so I can avoid HEAD requests - the mixing of decoded_content and content_file was due to me misunderstanding what decoded_content did. Can you elaborate what it does a little bit, for me?
      Documentation for decoded_content: http://search.cpan.org/perldoc?HTTP%3A%3AMessage Note that there is no content at all, as file downloaded using content_file option.