我正在尝试将我的 iOS 应用程序连接到 Keycloak 服务器以进行身份验证,并决定使用AeroGear 库来执行此操作。我按照自述文件中的说明进行了初始设置,并配置了服务器端的所有内容。我用来启动登录的代码是这样的:
let keycloakConfig = KeycloakConfig(
clientId: "testclient",
host: "http://localhost:8080",
realm: "testrealm",
isOpenIDConnect: true
)
let oauth2Module = AccountManager.addKeycloakAccount(config: keycloakConfig)
//let oauth2Module = KeycloakOAuth2Module(config: keycloakConfig, session: UntrustedMemoryOAuth2Session(accountId: "ACCOUNT_FOR_CLIENTID_\(keycloakConfig.clientId)"))
let http = Http()
http.authzModule = oauth2Module
oauth2Module.login {(accessToken: AnyObject?, claims: OpenIdClaim?, error: NSError?) in
print("login successful")
// some other stuff happens here
}
该应用程序将我带到 Keycloak 的登录屏幕,我在其中输入了用户信息,并且当我被重定向回我的应用程序时,似乎登录工作正常。但是由于某种原因,以后不会发生任何应该发生的事情 - 例如打印到控制台。当我在另一个应用程序中尝试它时它可以工作,所以它一定没问题,但我不知道如何调试它。关于 Keycloak 的会议似乎还不错,所以我不知道是什么原因造成的……我很感激一些建议,因为我很擅长这个。