From: Tusooa Zhu Date: Thu, 5 May 2022 23:20:32 +0000 (-0400) Subject: Skip cache when /objects or /activities is authenticated X-Git-Url: https://git.squeep.com/?a=commitdiff_plain;h=3fd87b6a7521ea244de7882c9486ee6a8e3fd1e7;p=akkoma Skip cache when /objects or /activities is authenticated Ref: fix-local-public --- diff --git a/lib/pleroma/web/plugs/cache.ex b/lib/pleroma/web/plugs/cache.ex index b0e44db07..935b2d834 100644 --- a/lib/pleroma/web/plugs/cache.ex +++ b/lib/pleroma/web/plugs/cache.ex @@ -100,19 +100,20 @@ defmodule Pleroma.Web.Plugs.Cache do should_cache = not Map.get(conn.assigns, :skip_cache, false) conn = - cond do - Map.get(conn.assigns, :skip_cache, false) -> - conn - - !opts[:tracking_fun] -> + unless opts[:tracking_fun] do + if should_cache do @cachex.put(:web_resp_cache, key, {content_type, body}, ttl: ttl) - conn + end + + conn + else + tracking_fun_data = Map.get(conn.assigns, :tracking_fun_data, nil) - true -> - tracking_fun_data = Map.get(conn.assigns, :tracking_fun_data, nil) + if should_cache do @cachex.put(:web_resp_cache, key, {content_type, body, tracking_fun_data}, ttl: ttl) + end - opts.tracking_fun.(conn, tracking_fun_data) + opts.tracking_fun.(conn, tracking_fun_data) end put_resp_header(conn, "x-cache", "MISS from Pleroma")