Allow to skip cache in Cache plug
Ref: fix-local-public
This commit is contained in:
parent
33d821256e
commit
932e5df19e
1 changed files with 9 additions and 10 deletions
|
@ -100,18 +100,17 @@ defp cache_resp(conn, opts) do
|
||||||
should_cache = not Map.get(conn.assigns, :skip_cache, false)
|
should_cache = not Map.get(conn.assigns, :skip_cache, false)
|
||||||
|
|
||||||
conn =
|
conn =
|
||||||
unless opts[:tracking_fun] do
|
cond do
|
||||||
if should_cache do
|
Map.get(conn.assigns, :skip_cache, false) ->
|
||||||
@cachex.put(:web_resp_cache, key, {content_type, body}, ttl: ttl)
|
|
||||||
end
|
|
||||||
|
|
||||||
conn
|
conn
|
||||||
else
|
|
||||||
tracking_fun_data = Map.get(conn.assigns, :tracking_fun_data, nil)
|
|
||||||
|
|
||||||
if should_cache do
|
!opts[:tracking_fun] ->
|
||||||
|
@cachex.put(:web_resp_cache, key, {content_type, body}, ttl: ttl)
|
||||||
|
conn
|
||||||
|
|
||||||
|
true ->
|
||||||
|
tracking_fun_data = Map.get(conn.assigns, :tracking_fun_data, nil)
|
||||||
@cachex.put(:web_resp_cache, key, {content_type, body, tracking_fun_data}, ttl: ttl)
|
@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
|
end
|
||||||
|
|
Loading…
Reference in a new issue