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) { async getGuestToken(uuid: string) {
const { loginToken, csrfToken } = await this.getCSRFToken(); const { loginToken, csrfToken, cookie } = await this.getCSRFToken();
const data = { const data = {
resources: [{ type: 'dashboard', id: uuid }], resources: [{ type: 'dashboard', id: uuid }],
@ -52,11 +54,14 @@ export class SupersetService {
user: { username: 'pos_embed', first_name: 'pos', last_name: 'embed' }, user: { username: 'pos_embed', first_name: 'pos', last_name: 'embed' },
}; };
const [requestCookie] = cookie[0].split(';');
const headers = { const headers = {
'Content-Type': 'application/json',
Authorization: `Bearer ${loginToken}`, Authorization: `Bearer ${loginToken}`,
Cookie: requestCookie,
'Content-Type': 'application/json',
'X-CSRFToken': `${csrfToken}`, 'X-CSRFToken': `${csrfToken}`,
Referer: `${this.supersetURL}/v1/security/guest_token/`, 'Access-Control-Allow-Credentials': true,
}; };
const response = await firstValueFrom( const response = await firstValueFrom(