如果没有令牌/令牌错误,Guardian.Plug.VerifyHeader不执行任何操作

时间:2019-04-04 16:04:32

标签: elixir phoenix-framework guardian

从路由器:

  pipeline :possibly_authorized do
    plug(:fetch_session)

    plug(
      Guardian.Plug.Pipeline,
      module: BoilerplateWeb.Guardian,
      error_handler: BoilerplateWeb.AuthErrorController
    )

    plug Guardian.Plug.VerifyHeader, realm: :none
    plug Guardian.Plug.LoadResource, allow_blank: true
  end

如果令牌丢失或错误,我如何使plug Guardian.Plug.VerifyHeader不执行任何操作?现在,它会通过error_handler引发错误。

编辑:目标是仍然检查令牌,如果令牌存在/有效,则下一个插件(LoadResource)将获得current_user,否则将获得{_1}}而不会升高。

1 个答案:

答案 0 :(得分:0)

基于https://github.com/ueberauth/guardian/blob/v1.2.1/lib/guardian/plug/verify_header.ex#L94

您会看到,当找不到令牌时,监护人将不执行任何操作,仅在令牌无效时才会停止。