fix: add cookie when request superset token
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details

pull/103/head 20.1.75-alpha.1
shancheas 2024-09-28 12:45:13 +07:00
parent df0536157a
commit e1c6b809e4
1 changed files with 9 additions and 4 deletions

View File

@ -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(