<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    <br>
    We are currently investigating the use of Varnish for our
    infrastructure. In the software we build, we depend on the
    If-None-Match header and the use of ETAG's.<br>
    The API we have created creates mainly JSON objects, and they differ
    in size from a few hundreds of bytes to several megabytes. A lot of
    these JSON objects are perfectly suited for caching, until someone
    changes a parameter and this can happen at any moment. That is also
    why we keep a record of all ETAG's and we invalidate them when
    needed. <br>
    <br>
    What we would like to do is cache created JSON object in front of
    our production environment and when someone requests the same
    calculation that someone else has requested before and the ETAG is
    still valid, send out the cached object. But this basicly implies
    the following workflow:<br>
    <br>
    <img src="cid:part1.FFE7E35F.41FA4089@betterbe.com" alt=""><br>
    <br>
    Somewhere I found an old Trac Wiki document that describes something
    like this, but I can't figure out if this has been implemented or
    not.<br>
<a class="moz-txt-link-freetext" href="https://www.varnish-cache.org/trac/wiki/BackendConditionalRequests?version=8">https://www.varnish-cache.org/trac/wiki/BackendConditionalRequests?version=8</a><br>
    <br>
    Could someone tell me if the workflow I describe is possible? My
    first tests tell me that in the default setup it isn't working like
    this.<br>
    <br>
    Best regards,<br>
    Jan Hugo Prins<br>
    <br>
    <br>
  </body>
</html>