diff --git a/webui/src/components/setting/config-access.vue b/webui/src/components/setting/config-access.vue index 97987bab..c940b0fc 100644 --- a/webui/src/components/setting/config-access.vue +++ b/webui/src/components/setting/config-access.vue @@ -7,6 +7,7 @@ import { ref, } from 'vue'; import { storeToRefs } from 'pinia'; +import { useClipboard } from '@vueuse/core'; import type { ApiTokenPublic, ApiTokenStatus, @@ -137,8 +138,11 @@ async function handleCreateToken(): Promise { } } +// legacy: 非安全上下文(HTTP)下 navigator.clipboard 不可用,回落到 execCommand +const { copy } = useClipboard({ legacy: true }); + async function copyIssuedToken(): Promise { - await navigator.clipboard.writeText(issuedToken.value); + await copy(issuedToken.value); message.success(t('access.token_copied')); } diff --git a/webui/src/components/setting/config-notification.vue b/webui/src/components/setting/config-notification.vue index b6464bc5..5609597f 100644 --- a/webui/src/components/setting/config-notification.vue +++ b/webui/src/components/setting/config-notification.vue @@ -1,4 +1,18 @@