Hi @localshop, thanks for taking an interest.
- I am using strict & warnings.
- The failing URLs are consistent, though I can't figure out any sort of pattern in either the URLs or the content they ought to download.
- I am not sure if the server sets a MIME type at all. If it does it will be some sort of catch all for binary files like application/octet-stream
- I have tried with Internet Explorer, Chrome & Firefox. All work fine. I have not tried with any command line tools or other perl libraries.
- The LWP client is running on Windows (Versions 7, 8, 10 & server 2008) as a Virtual Machine running on Linux KVM virtualiser. Hosted on Ubuntu 14.04. The server is in a Docker container under CentOS & Rancher 1.5x.
- LWP requests are in the clear on HTTP port 80.
- Not sure about LWP versions. Will that be built in to the Perl distro, or separately installed?
- I have confirmed this behaviour by installing later versions of perl on top of each other until the code starts working.
The overall application is an internal file storage system. The client is fairly simple, and is mostly concerned with supplying authentication credentials, checking the SHA1 checksum of the file as it is downloaded, and re-trying failed downloads. The server checks credentials, records the fact that the client downloaded the file in a database, and finds the file in one of a set of caches, local and remote file servers.
I can't upload a code example at the moment because I am not at work, but I will create and upload a minimal sample when I get a chance.
Are you posting in the right place? Check out Where do I post X? to know for sure.
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
Want more info? How to link
or How to display code and escape characters
are good places to start.