idk*_*idk 4 javascript reactjs keycloak
对于前端反应,我使用 ReactKeycloakProvider 作为要求用户登录的方式,然后令牌应该从“keycloak-js”存储到 Keycloak 中。
<ReactKeycloakProvider
authClient={MYKEYCLOAK}
initOptions={{onLoad: 'login-required'}}
>
<BrowserRouter>
<MainRouter />
</BrowserRouter>
</ReactKeycloakProvider>
Run Code Online (Sandbox Code Playgroud)
对于Keycloak,我使用的是 Keycloak v.20.0.2,客户端访问类型根据需要设置为机密,客户端身份验证器是客户端 Id 和 Secret。
问题是,用户登录后,无法获取token,出现401错误:
{
"error":"unauthorized_client",
"error_description":"Invalid client or Invalid client credentials"
}
Run Code Online (Sandbox Code Playgroud)
。不过,我希望能够成功获得令牌。
我已将访问类型设置为public,然后成功检索到令牌。但是,当我将其设置为机密时,就会出现401错误。所以我认为这是因为我没有将客户端密钥放入 keycloak 对象中。
另外,尝试使用 keycloak.json 将客户端密钥放入 keycloak 配置中,如下所示:
import Keycloak from 'keycloak-js';
const KEYCLOAK = new Keycloak('/keycloak.json');
Run Code Online (Sandbox Code Playgroud)
但只有将.json放在public文件夹中时才能识别,这很奇怪,并且会出现死循环。
| 归档时间: |
|
| 查看次数: |
10445 次 |
| 最近记录: |