gpt4 book ai didi

scala - 无法使用 Akka-Http 验证 OAuth2

转载 作者:行者123 更新时间:2023-12-02 12:38:02 25 4
gpt4 key购买 nike

您好,有一个使用 Akka-Http 开发的服务。我必须向其中添加 OAuth,并根据 documentation ,我为此使用 authenticateOAuth2

但是代码未编译并给出错误

Type mismatch, expected: (L) => server.Route, actual: (OauthInfo) => server.Route

我无法找到解决此问题的正确解决方案。我什至尝试了 example 中提到的确切代码在文档中,但它仍然抛出类似的编译时错误。

我正在将 akka-http 与 Circle 结合使用。

这是我的代码:

def route(implicit system: ActorSystem, mat: ActorMaterializer): Route =
Route.seal {
pathPrefix("newsletter-preferences") {
authenticateOAuth2(realm = "Secure site", authenticator) { authInfo =>
path("frequency" / LongNumber) { custNum =>
authorize(hasScopes(authInfo)) {
frequencyPreference(custNum) ~ addFreqPref(custNum)
}
} ~ path("pause" / LongNumber) { custNum =>
authorize(hasScopes(authInfo)) {
pauseInfo(custNum) ~ addPauseInfo(custNum) ~ unPauseUser(custNum)
}
}
} ~
path("health") {
healthRoute()
}
}
}

def hasScopes(authInfo: OAuthInfo): Boolean = ???

def authenticator(credentials: Credentials)(
implicit system: ActorSystem,
mat: ActorMaterializer): Option[OAuthInfo] = {
credentials match {
case p @ Credentials.Provided(token) =>
???
case _ => None
}
}

最佳答案

这是 IntelliJ 中的一个错误。
代码运行良好,但由于某种原因 IntelliJ Idea 显示错误。

关于scala - 无法使用 Akka-Http 验证 OAuth2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46840206/

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