Change endpoints.logout to nullable

Add redirect_uri in logout route
This commit is contained in:
René Preuß
2023-02-18 18:56:57 +01:00
parent f2e4b5c1c9
commit 36ccf819bd
2 changed files with 13 additions and 3 deletions

View File

@@ -12,7 +12,7 @@ export interface ModuleOptions {
endpoints: { endpoints: {
authorization: string, authorization: string,
userInfo: string, userInfo: string,
logout: string logout: string | null
}, },
clientId: string, clientId: string,
scope: string[] scope: string[]
@@ -28,7 +28,7 @@ const defaults: ModuleOptions = {
endpoints: { endpoints: {
authorization: 'https://accounts.bitinflow.com/oauth/authorize', authorization: 'https://accounts.bitinflow.com/oauth/authorize',
userInfo: `https://accounts.bitinflow.com/api/v3/user`, userInfo: `https://accounts.bitinflow.com/api/v3/user`,
logout: 'https://accounts.bitinflow.com/logout' logout: null,
}, },
clientId: 'please-set-client-id', clientId: 'please-set-client-id',
scope: ['user:read'] scope: ['user:read']

View File

@@ -45,7 +45,17 @@ export default async (options: ComposableOptions = {
accessToken.value = null; accessToken.value = null;
user.value = null; user.value = null;
return navigateTo(authConfig.endpoints.logout || authConfig.redirect.logout) if (authConfig.endpoints.logout) {
// create oauth logout url
const params = new URLSearchParams({
client_id: authConfig.clientId,
redirect_uri: window.location.origin + authConfig.redirect.logout
})
window.location.href = `${authConfig.endpoints.logout}?${params.toString()}`
}
return navigateTo(authConfig.redirect.logout)
} }
const setBearer = async (token: string, tokenType: string, expires: number) => { const setBearer = async (token: string, tokenType: string, expires: number) => {