**(UndefinedFunctionError)函数Guardian.Plug.authenticated/1是未定



我是ElixirPhoenix的新手,我正在尝试使用{:comeonin, "~> 4.0"}{:guardian, "~> 1.0"}验证我的应用程序,并有一个助手功能来检查用户是否登录:

defmodule Chatter.ViewHelper do
def current_user(conn), do: Guardian.Plug.current_resource(conn)
def logged_in?(conn) do
Guardian.Plug.authenticated?(conn)
end
end

但我得到了这个错误:

** (UndefinedFunctionError) function Guardian.Plug.authenticated?/1 is undefined or private.

Guardian文档在升级到v1.0后没有正确引用某些API调用。您需要从自定义MyApp.Guardian实现中调用这些函数,而不是从实际的Guardian模块中调用。

假设您遵循指南来实现MyApp.Guardian,则需要调用:

MyApp.Guardian.Plug.authenticated?(conn)

错误显示您试图在没有参数的情况下调用函数:

(UndefinedFunctionError) function Guardian.Plug.authenticated?/0

这里的/0表示没有自变量。

最新更新