我想更新用户的数据,但更新用户的数据后如何使更改也出现在会话中?
[...nextauth].js
callbacks: {
jwt: ({ token, user }) => {
if (user) {
token.id = user.id;
token.name = user.name;
token.surname = user.surname;
token.email = user.email;
token.role = user.role;
}
// Here, check the token validity date
if (token.tokenExpiration < Date.now()) {
// Call the endpoint where you handle the token refresh for a user
const user = axios.post(
`${process.env.API_URL}/auth/authentication/refresh`,
{
refreshToken: token.refreshToken,
}
);
// Check for the result and update the data accordingly
return { ...token, ...user }; …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 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: …Run Code Online (Sandbox Code Playgroud)