feat(frontend): make api base configurable

This commit is contained in:
Tim
2025-07-04 18:29:01 +08:00
parent 8519a80485
commit a7c6be2735
3 changed files with 12 additions and 3 deletions

View File

@@ -3,4 +3,11 @@ import App from './App.vue'
import router from './router'
import './assets/global.css'
// Configurable API domain and port
export const API_DOMAIN =
process.env.VUE_APP_API_DOMAIN ||
`${window.location.protocol}//${window.location.hostname}`
export const API_PORT = process.env.VUE_APP_API_PORT || window.location.port
export const API_BASE_URL = API_PORT ? `${API_DOMAIN}:${API_PORT}` : API_DOMAIN
createApp(App).use(router).mount('#app')

View File

@@ -48,6 +48,7 @@
</template>
<script>
import { API_BASE_URL } from '../main'
export default {
name: 'LoginPageView',
data() {
@@ -59,7 +60,7 @@ export default {
methods: {
async submitLogin() {
try {
const res = await fetch('/api/auth/login', {
const res = await fetch(`${API_BASE_URL}/api/auth/login`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ username: this.username, password: this.password })

View File

@@ -82,6 +82,7 @@
</template>
<script>
import { API_BASE_URL } from '../main'
export default {
name: 'SignupPageView',
@@ -98,7 +99,7 @@ export default {
methods: {
async sendVerification() {
try {
const res = await fetch('/api/auth/register', {
const res = await fetch(`${API_BASE_URL}/api/auth/register`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
@@ -120,7 +121,7 @@ export default {
},
async verifyCode() {
try {
const res = await fetch('/api/auth/verify', {
const res = await fetch(`${API_BASE_URL}/api/auth/verify`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ username: this.username, code: this.code })