设置和测试缓存控制标头的正确方法是什么?

时间:2015-09-21 02:16:13

标签: phoenix-framework

我正在处理我的OAuth登录端点,并且根据规范我要确保令牌不会缓存在某个CDN中。我需要设置这些标头,另外我想在我的测试套件中检查它们。

Cache-Control: no-store
Pragma: no-cache

1 个答案:

答案 0 :(得分:4)

可以使用插头执行此操作:

defmodule Bouncio.SessionController do
  use Bouncio.Web, :controller

  plug :secure_cache_headers

  ...

  defp secure_cache_headers(conn, _) do
    Plug.Conn.put_resp_header(conn, "cache-control", "no-store, private")
    Plug.Conn.put_resp_header(conn, "pragma", "no-cache")
  end
end

测试将涉及检查conn.resp_headers。