diff --git a/core/core.services.yml b/core/core.services.yml index 4eb462c..8d611a9 100644 --- a/core/core.services.yml +++ b/core/core.services.yml @@ -231,6 +231,11 @@ services: public: false tags: - { name: page_cache_response_policy } + page_cache_no_cache_non_cacheable: + class: Drupal\Core\PageCache\ResponsePolicy\DenyNonCacheableResponse + public: false + tags: + - { name: page_cache_response_policy } page_cache_no_server_error: class: Drupal\Core\PageCache\ResponsePolicy\NoServerError public: false diff --git a/core/lib/Drupal/Core/PageCache/ResponsePolicy/DenyNonCacheableResponse.php b/core/lib/Drupal/Core/PageCache/ResponsePolicy/DenyNonCacheableResponse.php new file mode 100644 index 0000000..fd00af7 --- /dev/null +++ b/core/lib/Drupal/Core/PageCache/ResponsePolicy/DenyNonCacheableResponse.php @@ -0,0 +1,29 @@ +get($request); - if ($response instanceof CacheableResponse) { + if ($response = $this->get($request)) { $response->headers->set('X-Drupal-Cache', 'HIT'); } else {