diff options
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/token.ts | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/lib/token.ts b/src/lib/token.ts index f838ac0..05de87e 100644 --- a/src/lib/token.ts +++ b/src/lib/token.ts @@ -1,12 +1,7 @@ import { ApiClient } from "../clients/api_client"; +import axios from "axios"; export default class Token { - client: ApiClient; - - constructor() { - this.client = new ApiClient(); - } - get() { return sessionStorage.getItem("token"); } @@ -16,7 +11,7 @@ export default class Token { } getRefresh() { - sessionStorage.getItem("refresh"); + return sessionStorage.getItem("refresh"); } setRefresh(refresh_token: string) { @@ -33,6 +28,18 @@ export default class Token { } refresh() { - this.client.post("/refresh_tokens") + const options = { + headers: { + Authorization: `Bearer ${this.getRefresh()}` + } + } + + try { + const response = axios.post('/refresh_tokens', null, options); + this.setRefresh(response.data.refresh); + this.set(response.data.token); + } catch(error) { + this.logout(); + } } }
\ No newline at end of file |