On 2019/10/21 17:39, Bradley Dean wrote:
>
> Using if-modified-since relies on the server you're querying supporting that
----
It "seems" it must support it separately, "I guess"...because (see below)...

>> Anyone know the call/header value to use for getting at the remote
>> object's last-modified time directly?
>>     
>
> You can check what headers are available by using a HEAD request before you 
> GET - then you can make the call to download or not.
>   
    I printed out all the headers -- unfortunately there was no
'last-modified'
value for the object (even though the directory listing for it shows a
timestamp).  Nevertheless, somehow it has to know since the 'mirror' method
seems to work. 

    Something weird might be going on since there is a squid-proxy
between me
and the content.  Very strange.  Note that the mirror method works, but
when I
tried to do similar, manually, I only got that my local copy was 'fresh'
until
the cache expiration time had passed, then it downloaded it again.

    But with the mirror method, it seems to only download it once and
sync with the remote.  Strange.


    One thing I was curious about -- when I call mirror (vs. get), I get
back
an HTTP::Response object.  One of the fields of that object is the
'content' value.  I'm wondering if that is read in dynamically if
'accessed', since I'm
pulling down RPM packages which can be rather large (the 10 largest packages
are over 1GB each!).  It certainly wouldn't just store them in the response
object, by default (would it?), since if I had references to several objects
at the same time, in memory, that could be a huge memory load.

    I can see I'm gonna want to find a way to filter some of these packages
before I mirror them since I don't really need the debuginfo for
multiple kernel
versions I'm not running nor various cross-compiler packages (Oi!)

   Whether dynamic or not, guess I'll find out -- can't believe how huge
some of those packages are!

Thanks!

Reply via email to