From 8c5780cf3e97fd5ec920c75dfc6259e16741d025 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Tue, 23 Aug 2022 17:53:00 +0800 Subject: [PATCH] fix(gui-v2): baseURL --- packages/nc-gui-v2/components/dlg/AirtableImport.vue | 6 ++++-- packages/nc-gui-v2/composables/useApi/index.ts | 6 ++++-- packages/nc-gui-v2/composables/useGlobal/state.ts | 2 +- packages/nc-gui-v2/plugins/tele.ts | 7 +++++-- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/packages/nc-gui-v2/components/dlg/AirtableImport.vue b/packages/nc-gui-v2/components/dlg/AirtableImport.vue index 9a33b64d73..13843156fc 100644 --- a/packages/nc-gui-v2/components/dlg/AirtableImport.vue +++ b/packages/nc-gui-v2/components/dlg/AirtableImport.vue @@ -11,6 +11,7 @@ import { onBeforeUnmount, onMounted, ref, + useGlobal, useNuxtApp, useProject, watch, @@ -24,8 +25,9 @@ const { modelValue } = defineProps() const emit = defineEmits(['update:modelValue']) -// TODO: handle baseURL -const baseURL = 'http://localhost:8080' // this.$axios.defaults.baseURL +const { appInfo } = $(useGlobal()) + +const baseURL = appInfo.ncSiteUrl const { $state } = useNuxtApp() diff --git a/packages/nc-gui-v2/composables/useApi/index.ts b/packages/nc-gui-v2/composables/useApi/index.ts index 61eb43b58c..444c1bb401 100644 --- a/packages/nc-gui-v2/composables/useApi/index.ts +++ b/packages/nc-gui-v2/composables/useApi/index.ts @@ -3,12 +3,14 @@ import { Api } from 'nocodb-sdk' import type { Ref } from 'vue' import type { CreateApiOptions, UseApiProps, UseApiReturn } from './types' import { addAxiosInterceptors } from './interceptors' -import { createEventHook, ref, unref, useCounter, useNuxtApp } from '#imports' +import { createEventHook, ref, unref, useCounter, useGlobal, useNuxtApp } from '#imports' export function createApiInstance(options: CreateApiOptions = {}): Api { + const { appInfo } = $(useGlobal()) + return addAxiosInterceptors( new Api({ - baseURL: options.baseURL ?? 'http://localhost:8080', + baseURL: options.baseURL ?? appInfo.ncSiteUrl, }), ) } diff --git a/packages/nc-gui-v2/composables/useGlobal/state.ts b/packages/nc-gui-v2/composables/useGlobal/state.ts index c0f7a799d4..6e14f20aeb 100644 --- a/packages/nc-gui-v2/composables/useGlobal/state.ts +++ b/packages/nc-gui-v2/composables/useGlobal/state.ts @@ -77,7 +77,7 @@ export function useGlobalState(storageKey = 'nocodb-gui-v2'): State { }) const appInfo = ref({ - ncSiteUrl: 'localhost:8080', + ncSiteUrl: 'http://localhost:8080', authType: 'jwt', connectToExternalDB: false, defaultLimit: 0, diff --git a/packages/nc-gui-v2/plugins/tele.ts b/packages/nc-gui-v2/plugins/tele.ts index 4d93493f09..18d03a57c0 100644 --- a/packages/nc-gui-v2/plugins/tele.ts +++ b/packages/nc-gui-v2/plugins/tele.ts @@ -6,16 +6,19 @@ import type { UseGlobalReturn } from '~/composables/useGlobal/types' // todo: ignore init if tele disabled export default defineNuxtPlugin(async (nuxtApp) => { const router = useRouter() + const route = useRoute() + const { appInfo } = $(useGlobal()) + let socket: Socket const init = async (token: string) => { try { if (socket) socket.disconnect() - // todo: extract base url - const url = 'http://localhost:8080' // new URL($axios.defaults.baseURL, window.location.href.split(/[?#]/)[0]).href + const url = new URL(appInfo.ncSiteUrl, window.location.href.split(/[?#]/)[0]).href + socket = io(url, { extraHeaders: { 'xc-auth': token }, })