Yes, assuming that your caching proxy (i.e., shared cache) respects the
Cache-Control HTTP header. ProKnow makes extensive use of both private and public caching schemes to maximize performance. It utilizes the
Cache-Control header to indicate whether items can be cached publicly (e.g., web assets, immutable CT/MR image slices) or privately (e.g., user scores). Note that generally speaking, the ProKnow API will respond with two types of
Cache-Control configurations. First, for public, immutable data, it will respond with something like the following:
Cache-Control: public, max-age=31557600
In this case, the data element is public and is uniquely identified by its URL (regardless of the current user). Generally these URLs consist of a revision tag to ensure that any changes in the underlying resource will result in a different request. These types of responses are safe to store in a shared or public cache.
The second type of response will look something like the following:
Cache-Control: private, max-age=0, must-revalidate
This type of response indicates that the provided data is private to a single user, and only their client (i.e., browser) should store the response shared caches (e.g., in a proxy) should never store these responses.
In general, as long as the caching proxy respects the
Cache-Control headers, and uses the URL to uniquely identify the requested resource, ProKnow should function properly. For further information regarding the proper interpretation of
Cache-Control headers, we refer you to the following:
Article is closed for comments.