On 07/28/2017 06:07 PM, Bennett Todd wrote:
I'm not expert in curl, nor even http client coding, so I just checked the
curl(1) man page on my system, it says:
(HTTP) If the server reports that the
requested page has moved to a different
location (indicated with a Location:
header and a 3XX response code), this
option will make curl redo the request on
the new place. If used together with -i,
--include or -I, --head, headers from all
requested pages will be shown. When
authentication is used, curl only sends
its credentials to the initial host. If a
redirect takes curl to a different host,
it won't be able to intercept the
user+password. See also --location-
trusted on how to change this. You can
limit the amount of redirects to follow
by using the --max-redirs option.
If this hasn't already been done in perl6 natively, it might be nicest to just
It depends on your goal. If you want to expand the perl6 ecosystem, that'd be
great. But if you just want to get the job done, there are advantages to just
invoking curl; web standards evolve really fast, and curl is pretty actively
maintained as far as I know (it's been a little while since I was actively
tracking curl development).
In P5, LWP::UserAgent does not follow links or I do not know how.
There is a way to get it to find a redirected link, but it doesn't
always include anything past the "?" in the returned URL.
I have been fighting with this all day and gave up an hour ago
and just did a system call to curl (this is P5 code):
$CurlStatus = system (
"curl -L -b $AcceptCookie $ClickHere -o $NewFileName" );
This comes from a 4986 line piece of P5 code I wrote to
download all the new revision of software I need to
place on flash drive to take to my customer sites.
I will be eventually migrating it to P6, as I adore P6 and it
will be a lot easier to maintain. I program in Top Down and
P5's sub's annoy the pants off of me.
I may just to system calls to curl as you suggested as it is
a lot easier than LWP::UserAgent, which is a pain-in-the-ass.
Computers are like air conditioners.
They malfunction when you open windows