修复重大故障: JwtAuthenticationFilter文件,远程读取用户接口导致的服务器请求数量跑满

This commit is contained in:
2025-02-22 00:00:33 +08:00
parent d61e683d41
commit def17d1de9
51 changed files with 1748 additions and 1436 deletions

View File

@@ -1,53 +1,57 @@
<template>
<div class="fr clearfix flex items-center">
<div class="fl mr-5">
<div v-if="setting.searchBtn" class="fl mr-5">
<el-input v-model="keywords" :placeholder="`${$t('searchKeywords')}`" :suffix-icon="Search" @change="onSearch"/>
</div>
<!-- 未登录 -->
<div v-if="!token" class="lang flex justify-center text-center items-center">
<el-space>
<nuxt-link to="/passport/login?type=register" type="text" class="text-sm text-gray-500">注册</nuxt-link>
<el-divider direction="vertical"/>
<nuxt-link to="/passport/login" type="text" class="text-sm text-gray-500">登录</nuxt-link>
</el-space>
</div>
<!-- 已登录 -->
<div v-else>
<div class="header__right items-center pr-4 xl:pr-0 md:flex hidden">
<el-space class="sm:flex hidden" size="large">
<ClientOnly>
<template v-if="token">
<el-dropdown @command="handleCommand">
<el-space class="flex items-center cursor-pointer">
<el-avatar class="cursor-pointer" :src="user?.avatar" :size="30" />
<span>{{ user?.nickname }}</span>
</el-space>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item command="user"><nuxt-link to="/user">用户中心</nuxt-link></el-dropdown-item>
<el-dropdown-item command="password"><nuxt-link to="/user/password">修改密码</nuxt-link></el-dropdown-item>
<el-dropdown-item command="auth"><nuxt-link to="/user/auth">实名认证</nuxt-link></el-dropdown-item>
<el-dropdown-item divided command="order"><nuxt-link to="/user/order">我的订单</nuxt-link></el-dropdown-item>
<el-dropdown-item divided command="logOut"><nuxt-link to="/user/logout">退出登录</nuxt-link>
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</template>
<template v-else>
<el-button type="primary" v-if="!token" @click="navigateTo(`/passport/login`)">登录/注册</el-button>
<!-- <el-button v-if="config.showLoginButton" circle :icon="ElIconUserFilled" @click="goLogin"></el-button>-->
</template>
</ClientOnly>
<template v-if="setting.loginBtn">
<!-- 未登录 -->
<div v-if="!token" class="lang flex justify-center text-center items-center">
<el-space>
<nuxt-link to="/passport/login?type=register" type="text" class="text-sm text-gray-500">注册</nuxt-link>
<el-divider direction="vertical"/>
<nuxt-link to="/passport/login" type="text" class="text-sm text-gray-500">登录</nuxt-link>
</el-space>
</div>
</div>
<!-- 已登录 -->
<div v-else>
<div class="header__right items-center pr-4 xl:pr-0 md:flex hidden">
<el-space class="sm:flex hidden" size="large">
<ClientOnly>
<template v-if="token">
<el-dropdown @command="handleCommand">
<el-space class="flex items-center cursor-pointer">
<el-avatar class="cursor-pointer" :src="user?.avatar" :size="30" />
<span>{{ user?.nickname }}</span>
</el-space>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item command="user"><nuxt-link to="/user">用户中心</nuxt-link></el-dropdown-item>
<el-dropdown-item command="password"><nuxt-link to="/user/password">修改密码</nuxt-link></el-dropdown-item>
<el-dropdown-item command="auth"><nuxt-link to="/user/auth">实名认证</nuxt-link></el-dropdown-item>
<el-dropdown-item divided command="order"><nuxt-link to="/user/order">已购插件</nuxt-link></el-dropdown-item>
<el-dropdown-item divided command="logOut"><nuxt-link to="/user/logout">退出登录</nuxt-link>
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</template>
<template v-else>
<el-button type="primary" v-if="!token" @click="navigateTo(`/passport/login`)">登录/注册</el-button>
<!-- <el-button v-if="config.showLoginButton" circle :icon="ElIconUserFilled" @click="goLogin"></el-button>-->
</template>
</ClientOnly>
</el-space>
</div>
</div>
</template>
</div>
</template>
<script setup lang="ts">
import { Search } from '@element-plus/icons-vue'
import {useConfigInfo, useSetting} from "~/composables/configState";
const token = useToken();
const user = useUser();
const setting = useSetting();
const keywords = ref<string>();
const onSearch = () => {

View File

@@ -1,9 +1,7 @@
<template>
<nuxt-link to="/" class="flex items-center cursor-pointer gap-sm mr-7" v-if="logo">
<!-- <el-image src="https://oss.wsdns.cn/20250211/eedb87d7b95b41e3bc9eca1247c85fa4.png" class="h-[30px]" size="small" shape="square" />-->
<!-- <h4 class="text-gray-700 text-xl font-bold">WEBSOFT</h4>-->
<el-image :src="logo?.value" class=" rounded-sm rounded-sm w-[107px] h-[24px]"/>
<!-- <div class="text-sm text-gray-700 text-xl font-bold" :style="`${logo?.style}`">{{ website?.websiteName }}</div>-->
<nuxt-link to="/" class="flex items-center cursor-pointer gap-sm mr-7" v-if="website">
<el-image v-if="website.websiteLogo || logo?.value" :style="`${logo?.style}`" :src="logo?.value || website?.websiteLogo" class=" rounded-sm rounded-sm w-[107px] h-[24px]"/>
<h4 v-else class="text-gray-700 text-xl font-bold" :style="`${logo?.style}`">{{ website?.websiteName }}</h4>
</nuxt-link>
</template>
@@ -11,7 +9,6 @@
import {useLogo, useWebsite} from "~/composables/configState";
import {listCmsWebsiteField} from "~/api/cms/cmsWebsiteField";
const logo = useLogo()
const config = useAppConfig();
const website = useWebsite();
listCmsWebsiteField({