[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LYNX-DEV Rendering
Re: LYNX-DEV Rendering
Thu, 24 Oct 1996 08:56:07 -0500 (EST)
Duncan Hill <address@hidden> wrote:
>Ok..this just struck me, so sorry for opening an old thread. I can't
>ever remember seeing mention of at least one way caching on the rendering
>of a page.
>If I load a page, alls well. I want to see the source, so I press \ and
>off Lynx goes to get the HTML. No problem, now I want the rendered
>version, so I press \ again, and it goes again. Now, if Lynx has the raw
>HTML in memory, why does it need to go and get the raw HTML again? Or
>did I miss something fundemental in the last thread about this?
Lynx does not have the "raw" anything in memory, ever. When you
fetch the source, to display it Lynx must *render* it (as text/plain) into
an HText structure. Lynx is *not* a file viewer like more, less or most.
Lynx can save input streams to disk, as it does for ones which will be
passed via a spawn to a helper app. But it does not save text/html or
text/plain to disk (except for 'd'ownloads, for which you will be passing
the disk copy to a "help app" selected from the download menu, not
displaying it with Lynx).
To use a disk cache, Lynx should also have a large body of code
implemented for checking and regulating it's expiration, and taking a
large variety of additional considerations into account. I strongly
recommend that the people who have been on this list for a while, and
keep asking this kind of question, do use the online 'h'elp to access
the HTTP/1.0 and/or HTTP/1.1 Specs, and read at least some of the
thousands of lines in them about caching.
Note also, that because the major clients now use server-like
caches, a variety of the requirements for cache regulation are implemented
in those clients, and Lynx's blind re-use of its cache-size (normally 10)
HText stores, without first doing those checks, technically is in
violation of the protocol. All we're checking, as of v2.6, is whether
a no-cache header or META directive was present when the original stream
was received (and whether it was a POSTed form). In the great majority
of cases on today's Web, relying on nothing more than a no-cache directive
or POST content check is fine, but as the more elaborate HTTP/1.1
Cache-Control, Expires, and other headers become more widely used, what
Lynx is doing won't be fine.
Foteos Macrides Worcester Foundation for Biomedical Research
address@hidden 222 Maple Avenue, Shrewsbury, MA 01545
; To UNSUBSCRIBE: Send a mail message to address@hidden
; with "unsubscribe lynx-dev" (without the
; quotation marks) on a line by itself.