Skip to content

Nuxt

Plugin 등록

/plugins/keycloak.ts 생성

ts
import { KeycloakClient } from '@jupiter/ts-monorepo';

export default defineNuxtPlugin({
    setup(nuxtApp) {
        const config: any = useRuntimeConfig();
        
        nuxtApp.provide('keycloak', () => {
            const keycloak = new KeycloakClient({
                url: config.public.keycloakApiUrl,
                realm: config.public.keycloakRealm,
                clientId: config.public.keycloakClientId,
                clientSecret: config.public.keycloakClientSecret,
            });

            return keycloak;
        });
    }
})

Plugin 사용

ts
// plugin
const { $keycloak }: any = useNuxtApp();

Example

ts
$keycloak().requestToken({
    username: 'sjwiq200@jupiterstudio.co.kr',
    password: '12345',
}).then((res: any) => {
    console.dir(res);
}).catch((err: any) => {
    console.error(err);
});