Simplify Base URL

This commit is contained in:
Andreas Dinauer 2026-03-15 12:43:03 +01:00
parent f3861ccf2b
commit fb8c649bae
4 changed files with 15 additions and 59 deletions

View File

@ -1,10 +1,7 @@
import axios from "axios";
import {Api} from "~/utils/Api";
export class Account
{
static baseURL: "http://localhost:8089/api/iam-backend/realms/key/accounts";
firstname?: string;
lastname?: string;
username?: string;
@ -20,11 +17,7 @@ export class Account
static create(user: AccountCreation, onSuccess: () => void)
{
AuthApi.create().post('/accounts', user)
.then(() =>
{
onSuccess();
});
}
}

View File

@ -1,5 +1,4 @@
import {type AxiosResponse} from "axios";
import {Api} from "~/utils/Api";
import type {Account} from "~/auth/Account";
export class Session
@ -16,15 +15,7 @@ export class Session
static create(sessionCreation: SessionCreation, onSuccess: (token: string) => void, onError: () => void)
{
AuthApi.create().post<string>("/sessions/" + useRuntimeConfig().public.clientId, sessionCreation)
.then((response: AxiosResponse) =>
{
onSuccess(response.data);
})
.catch(() =>
{
onError();
});
}
}

View File

@ -1,4 +1,4 @@
import {Api, MavenApi} from "~/utils/Api";
import {MavenApi} from "~/utils/Api";
export class Artifact
{

View File

@ -1,50 +1,22 @@
import axios, {type AxiosInstance} from "axios";
export abstract class Api
export class MavenApi
{
public baseURL: string;
protected constructor(baseURL: string)
{
this.baseURL = baseURL;
}
build()
{
const instance: AxiosInstance = axios.create({
baseURL: this.baseURL
});
instance.interceptors.request.use((config) =>
{
config.withCredentials = true;
return config;
})
return instance;
}
}
export class AuthApi extends Api
{
constructor()
{
super("http://localhost:8089/api/iam-backend");
}
static create()
{
return new AuthApi().build();
return build("/proxy/api");
}
}
export class MavenApi extends Api
function build(baseURL: string)
{
constructor()
const instance: AxiosInstance = axios.create({
baseURL: baseURL
});
instance.interceptors.request.use((config) =>
{
super("http://localhost:8080");
}
static create()
{
return new MavenApi().build();
}
config.withCredentials = true;
return config;
})
return instance;
}