[Zope3-dev] Other (than GET and POST) HTTP Methods
Steve Alexander
steve@cat-box.net
Fri, 10 Jan 2003 12:33:51 +0000
> However, it seems to me that implementing CG "right" gives similar
> problems as HEAD: even if the source code of say a ZPT is still the
> same, it could insert the current date/time in it, or call a Python
> script that calculates something dyamically, or inserts database records
> of a database that may have changed, etc.
>
> Implementing CG "right" means determining if the page has changed since
> some previous time, which requires either:
>
> - a (very difficult?) semantic analyses of the page source code,
> including the code of all the scripts and templates that get
> called indirectly; or
>
> - internally rendering the page and calculating the ETag and
> comparing it with the one supplied in the page request (verifying
> the time at which the page started rendering differently is
> probably very difficult, too, so just use the ETag instead)
You don't need to do this completely automatically
You can have a means of annotating your content with information about
which views are static with respect to the content, and which views
change independently of the object.
This is a very similar issue to caching views, and producing appropriate
HTTP caching headers for views.
--
Steve Alexander