From 7a5275dd2e81a399bfa77a277977e87b24001696 Mon Sep 17 00:00:00 2001 From: Julien Calixte Date: Sun, 2 May 2021 17:21:24 +0200 Subject: [PATCH] =?UTF-8?q?:sparkles:=20(refresh)=20refresh=20when=20reque?= =?UTF-8?q?sti=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Authorize.vue | 5 ----- src/modules/repo/services/repo.ts | 4 ++++ src/modules/user/service/signIn.ts | 9 ++------- 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/components/Authorize.vue b/src/components/Authorize.vue index 37faeec..6583b0a 100644 --- a/src/components/Authorize.vue +++ b/src/components/Authorize.vue @@ -42,8 +42,3 @@ export default defineComponent({ } }) - - diff --git a/src/modules/repo/services/repo.ts b/src/modules/repo/services/repo.ts index 69363a2..750a993 100644 --- a/src/modules/repo/services/repo.ts +++ b/src/modules/repo/services/repo.ts @@ -3,6 +3,7 @@ import { useMarkdown } from '@/hooks/useMarkdown.hook' import { useNoteCache } from '@/modules/note/hooks/useNoteCache' import { RepoFile } from '@/modules/repo/interfaces/RepoFile' import { UserSettings } from '@/modules/repo/interfaces/UserSettings' +import { refreshToken } from '@/modules/user/service/signIn' import { Octokit } from '@octokit/rest' export const getFiles = async ( @@ -12,6 +13,7 @@ export const getFiles = async ( if (!owner || !repo) { return [] } + await refreshToken() const { accessToken } = useGitHubLogin() @@ -54,6 +56,7 @@ export const getMainReadme = async (owner: string, repo: string) => { const cachedReadme = await getCachedNote() try { + await refreshToken() const { accessToken } = useGitHubLogin() const octokit = new Octokit({ auth: accessToken.value @@ -102,6 +105,7 @@ export const getFileContent = async ( repo: string, sha: string ) => { + await refreshToken() const { accessToken } = useGitHubLogin() const octokit = new Octokit({ diff --git a/src/modules/user/service/signIn.ts b/src/modules/user/service/signIn.ts index 9b9907b..c0a0f2d 100644 --- a/src/modules/user/service/signIn.ts +++ b/src/modules/user/service/signIn.ts @@ -40,14 +40,9 @@ export const refreshToken = async () => { if (new Date(accessToken.expirationDate) >= new Date()) { const authenticationServerURL = new URL(AUTHENTICATION_SERVER) authenticationServerURL.searchParams.set('type', 'refresh') + authenticationServerURL.searchParams.set('code', accessToken.refreshToken) - const response = await fetch(authenticationServerURL.toString(), { - method: 'POST', - body: JSON.stringify({ - refresh_token: accessToken.refreshToken, - grant_type: 'refresh_token' - }) - }) + const response = await fetch(authenticationServerURL.toString()) const githubToken = (await response.json()) as | GithubToken | GithubTokenError