【发布时间】:2021-02-24 18:01:42
【问题描述】:
我正在创建一个应用程序,该应用程序将对用户进行身份验证并将他们转发到传递给第一个 get 请求的重定向 URL。
流程是这样的:
1. 用户点击不在应用程序中托管的静态 URL。
2. 验证请求 (GET)(参数 = 重定向 URL)
3. (用户提交表单) -> (Authenticate) (POST) (params = redirect URL & user & pass)
4. 身份验证发生在服务器上并将它们转发到重定向,或者转储到无效的登录页面。
我的问题是这样的: 如果用户在 N 时间跨度内成功通过身份验证,我不想显示登录页面。我可以用 genserver 处理该逻辑没问题。但是有没有办法在我点击 POST 之前创建一个独特的会话存储,这会在我显示表单之前挂在用户身上?
在 ASP.NET 中,会话容器在用户之间已经是唯一的,所以我想看看是否有与 phoenix 类似的东西。
感谢您的帮助。
【问题讨论】:
-
你看过
Plug.Session/Plug.Conn.put_session/Plug.Conn.get_session(hexdocs.pm/plug)吗? -
是的,我有。我看到的所有示例都是在会话用户之间使用唯一键。喜欢用户名。在我知道谁是谁之前,我需要唯一的会话容器。