fixing auth

This commit is contained in:
Warunee Tamkoo 2024-07-26 12:52:47 +07:00
parent f4592d2844
commit 3c4202a928
7 changed files with 91 additions and 102 deletions

View file

@ -1,6 +1,6 @@
<script setup lang="ts">
import { ref, onMounted, onUnmounted, watch } from "vue";
import keycloak from "@/plugins/keycloak";
import keycloak, { kcLogout } from "@/plugins/keycloak";
import { useRoute, useRouter } from "vue-router";
import { useDataStore } from "@/stores/data";
import { storeToRefs } from "pinia";
@ -416,20 +416,13 @@ const doLogout = () => {
dialogConfirm(
$q,
async () => {
keycloak.logout();
await deleteCookie("BMAHRIS_KEYCLOAK_IDENTITY");
await deleteCookie("BMAHRIS_KEYCLOAK_REFRESH");
window.location.href = "/login";
kcLogout();
},
"ยืนยันการออกจากระบบ",
"ต้องการออกจากระบบใช่หรือไม่?"
);
};
function deleteCookie(name: string) {
document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
}
/**
* งชอผใชงานจาก keycloak
*/

View file

@ -1,28 +1,17 @@
<script setup lang="ts">
import { onMounted } from 'vue'
import { useRoute } from 'vue-router'
import { kcAuthen } from "@/plugins/keycloak";
import { onMounted } from "vue";
import { useRoute } from "vue-router";
const route = useRoute()
const route = useRoute();
function setCookie(name: string, value: any, days: number) {
let expires = ''
if (days) {
const date = new Date()
date.setTime(date.getTime() + days * 24 * 60 * 55 * 1000)
expires = '; expires=' + date.toUTCString()
onMounted(() => {
if (route.query.token && route.query.accessToken) {
// console.log('query', route.query.token)
// console.log('accessToken', route.query.accessToken)
kcAuthen(route.query.token.toString(), route.query.accessToken.toString());
}
document.cookie = name + '=' + (value || '') + expires + '; path=/'
}
onMounted(async () => {
console.log('query', route.query.token)
console.log('accessToken', route.query.accessToken)
setCookie('BMAHRIS_KEYCLOAK_IDENTITY', route.query.token, 1)
setCookie('BMAHRIS_KEYCLOAK_REFRESH', route.query.accessToken, 1)
window.location.href = '/'
})
});
</script>
<template>

View file

@ -2,7 +2,7 @@
<script setup lang="ts">
import { ref, onMounted } from "vue";
import axios from "axios";
import keycloak, { keycloakConfig } from "@/plugins/keycloak";
import keycloak, { keycloakConfig, kcAuthen } from "@/plugins/keycloak";
import { useRouter } from "vue-router";
import { useQuasar } from "quasar";
import { useCounterMixin } from "@/stores/mixin";
@ -13,16 +13,6 @@ const $q = useQuasar(); //ใช้ noti quasar
const { showLoader, hideLoader, messageError } = mixin;
function setCookie(name: string, value: any, days: number) {
let expires = "";
if (days) {
const date = new Date();
date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + (value || "") + expires + "; path=/";
}
const username = ref<string>("");
const password = ref<string>("");
async function onSubmit() {
@ -48,10 +38,8 @@ async function onSubmit() {
},
}
)
.then(async (res) => {
await setCookie("BMAHRIS_KEYCLOAK_IDENTITY", res.data.access_token, 1);
await setCookie("BMAHRIS_KEYCLOAK_REFRESH", res.data.refresh_token, 1);
window.location.href = "/";
.then((res) => {
kcAuthen(res.data.access_token, res.data.refresh_token);
})
.catch((err) => {
messageError($q, err, "ชื่อผู้ใช้หรือรหัสผ่านไม่ถูกต้อง");
@ -59,15 +47,8 @@ async function onSubmit() {
.finally(() => {
hideLoader();
});
// if (response.status !== 200) {
// messageError($q, err)
// } else {
// await setCookie('BMAHRIS_KEYCLOAK_IDENTITY', response.data.access_token, 1)
// await setCookie('BMAHRIS_KEYCLOAK_REFRESH', response.data.refresh_token, 1)
// router.push('/')
// }
}
onMounted(() => {
if (keycloak.authenticated) {
console.log("authenticated", keycloak.authenticated);