From c879e3f28912f56645f8a5b96d7ad60e6a7ac6d1 Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Wed, 26 Mar 2025 18:00:15 +0700 Subject: [PATCH] refactor: get function] --- src/stores/user/signature.ts | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/stores/user/signature.ts b/src/stores/user/signature.ts index 5ee30ed9..7cc4b1ef 100644 --- a/src/stores/user/signature.ts +++ b/src/stores/user/signature.ts @@ -1,3 +1,4 @@ +import axios from 'axios'; import { api } from 'src/boot/axios'; import { getUserId } from 'src/services/keycloak'; @@ -6,16 +7,26 @@ export async function getSignature() { if (!userId) return; - const response = await api.get('/user/' + userId + '/signature', { + const responseSignature = await api.get( + '/user/' + userId + '/signature', + ); + + if (!responseSignature.data) return ''; + + const responseBlob = await axios.get(responseSignature.data, { responseType: 'blob', }); - return await new Promise((resolve, reject) => { - const reader = new FileReader(); - reader.addEventListener('error', reject); - reader.addEventListener('load', () => resolve(reader.result as string)); - reader.readAsDataURL(response.data); - }); + if (responseBlob.status < 400) { + return await new Promise((resolve, reject) => { + const reader = new FileReader(); + reader.addEventListener('error', reject); + reader.addEventListener('load', () => resolve(reader.result as string)); + reader.readAsDataURL(responseBlob.data); + }); + } else { + return ''; + } } export async function setSignature(image: string) {