gpt4 book ai didi

swift - Vapor 4 用户认证和授权

转载 作者:行者123 更新时间:2023-12-04 01:24:57 24 4
gpt4 key购买 nike

我最近开始使用 steam4(没有使用任何旧版本),我正在尝试弄清楚如何实现用户授权和身份验证。虽然我了解基本概念,但在使用 Laravel 之前我仍然不知道在 Steam 中做什么。

我扩展了我的用户。我没有 pw 散列,这是用于测试和基本理解。我们暂时忽略它。

extension User: ModelAuthenticatable
{
static let usernameKey = \User.$name
static let passwordHashKey = \User.$password

func verify(password: String) throws -> Bool {
return password == self.password
}
}

问题是我找不到如何使用此身份验证的教程。我只是尝试一些东西来让它工作,但没有成功。这是在我的路由文件中。

let auth = app.grouped(User.authenticator())        
auth.get("sign-in") { req in
"I'm authenticated"
}

我的第一个目标只是在尝试这条路线时收到成功或失败的答案。最终我想切换到基于 token 的解决方案,但一次一个步骤。

我读到的东西是: https://docs.vapor.codes/4.0/authentication/https://theswiftdev.com/all-about-authentication-in-vapor-4/ .无论如何,我无法停止弄清楚如何使用所描述的身份验证器。

最佳答案

在写这篇文章时,我终于想通了。无论如何,对于在这方面绊倒的人。就这么简单:

let auth = app.grouped(User.authenticator(), User.guardMiddleware())
auth.get("sign-in") { req in
"I'm authenticated"
}

您的用户级提供 guardMiddleware默认情况下。您不必实现任何其他功能,只需在您的 route 使用它即可。

关于swift - Vapor 4 用户认证和授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62082190/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com