[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