我正在尝试在 React 应用程序中实现 keycloak,但收到 403 禁止消息。React 在 :3000 上运行,Keycloak 在端口 :8080 上运行,这是 Keycloak.ts
import Keycloak from 'keycloak-js';
const keycloak = Keycloak({
url: 'http://localhost:8080/auth',
realm: "keycloak-react-auth",
clientId: "react",
});
export default keycloak;
Run Code Online (Sandbox Code Playgroud)
索引.ts
import keycloak from './keycloak'
import AppRouter from './routes/index'
import { ReactKeycloakProvider } from '@react-keycloak/web'
const eventLogger = (event: unknown, error: unknown) => {
console.log('onKeycloakEvent', event, error)
}
const tokenLogger = (tokens: unknown) => {
console.log('onKeycloakTokens', tokens)
}
ReactDOM.render(
<React.StrictMode>
<ReactKeycloakProvider
authClient={keycloak}
onEvent={eventLogger}
onTokens={tokenLogger}
>
<div style={{margin: '0px', padding: '0px', width: '100%', height: '100%'}}>
<AppRouter />
</div>
</ReactKeycloakProvider>
</React.StrictMode>,
document.getElementById('root')
Run Code Online (Sandbox Code Playgroud)
这是 keycloak 客户端配置
Keycloak 在最新版本上运行:docker pull jboss/keycloak:latest
反应时:
错误代码:
小智 6
我遇到了同样的问题,答案是 keycloak 客户端的 Web 原点设置不正确。要检查您登录 keycloak 的管理面板是否存在同样的问题,请选择正确的领域,选择您的客户端并将 Web 源更改为 just,+然后尝试从您的应用程序登录。
还要确保您的Valid redirect URIs. 为了在我的本地进行测试,我刚刚使用了http://localhost:3000/*
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
6379 次 |
| 最近记录: |