From e1c6b809e4ed8ee59eb34619abee4c3aee437bb3 Mon Sep 17 00:00:00 2001 From: shancheas Date: Sat, 28 Sep 2024 12:45:13 +0700 Subject: [PATCH] fix: add cookie when request superset token --- .../configuration/superset/superset.service.ts | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/modules/configuration/superset/superset.service.ts b/src/modules/configuration/superset/superset.service.ts index b79d590..808b0ce 100644 --- a/src/modules/configuration/superset/superset.service.ts +++ b/src/modules/configuration/superset/superset.service.ts @@ -40,11 +40,13 @@ export class SupersetService { }), ); - return { loginToken, csrfToken: response.data.result }; + const cookie = response.headers['set-cookie']; + + return { loginToken, csrfToken: response.data.result, cookie }; } async getGuestToken(uuid: string) { - const { loginToken, csrfToken } = await this.getCSRFToken(); + const { loginToken, csrfToken, cookie } = await this.getCSRFToken(); const data = { resources: [{ type: 'dashboard', id: uuid }], @@ -52,11 +54,14 @@ export class SupersetService { user: { username: 'pos_embed', first_name: 'pos', last_name: 'embed' }, }; + const [requestCookie] = cookie[0].split(';'); + const headers = { - 'Content-Type': 'application/json', Authorization: `Bearer ${loginToken}`, + Cookie: requestCookie, + 'Content-Type': 'application/json', 'X-CSRFToken': `${csrfToken}`, - Referer: `${this.supersetURL}/v1/security/guest_token/`, + 'Access-Control-Allow-Credentials': true, }; const response = await firstValueFrom(