in reply to Re^6: HTTP response: 400 Bad Request
in thread HTTP response: 400 Bad Request

Firstly, set $File::Fetch::DEBUG=1;.

Ideally, File::Fetch should have had a method to provide it with a user-created LWP object in order for the user to have full control over it. Diagonally looking at the source:

### set up the useragent object my $ua = LWP::UserAgent->new(); $ua->timeout( $TIMEOUT ) if $TIMEOUT; $ua->agent( $USER_AGENT ); $ua->from( $FROM_EMAIL );

It looks to me you are out of luck with File::Fetch if you want to fine-tune LWP. Though, LWP is not the only tool it uses to fetch files but it seems to me it creates them on the fly during each fetch() and with a minimal set of parameters decided by it.

In the past I have used URI::Fetch which optionally accepts a pre-cooked user-specified LWP object which you can tune to your heart's content:

my $ua = LWP::UserAgent->new(...); URI::Fetch->fetch($uri, 'UserAgent' => $ua) };

FInally, LWP::UserAgent can be made super verbose (dumping the headers for example) with:

use LWP::UserAgent; use LWP::ConsoleLogger::Easy qw/debug_ua/; my $ua = LWP::UserAgent->new(...); debug_ua($ua, 10);

bw, bliako

Replies are listed 'Best First'.
Re^8: HTTP response: 400 Bad Request
by justin423 (Scribe) on Jul 14, 2023 at 14:09 UTC
    surprise #2...

    cpan> install URI::Fetch

    Warning: Cannot install URI::Fetch, don't know what it is.

      nope, something wrong with your installation