fix: $dropFetch SSR and rate limiting

This commit is contained in:
DecDuck
2025-04-01 12:02:34 +11:00
parent f1c932b7d7
commit 1048653eef
3 changed files with 9 additions and 13 deletions

View File

@ -31,11 +31,16 @@ export const $dropFetch: DropFetch = async (request, opts) => {
if (!getCurrentInstance()?.proxy) {
return (await $fetch(request, opts)) as any;
}
const id = request.toString();
const state = useState(id);
if (state.value) return state.value;
const headers = useRequestHeaders(["cookie"]);
const { data, error } = await useFetch(request, {
const data = await $fetch(request, {
...opts,
headers: { ...opts?.headers, ...headers },
} as any);
if (error.value) throw error.value;
return data.value as any;
state.value = data;
return data as any;
};

View File

@ -28,12 +28,6 @@ export default defineNuxtConfig({
"/signout": { prerender: true },
"/api/**": { cors: true },
"/api/v1/client/object/*": {
security: {
rateLimiter: false,
},
},
},
nitro: {
@ -80,5 +74,6 @@ export default defineNuxtConfig({
},
strictTransportSecurity: false,
},
rateLimiter: false
},
});

View File

@ -86,10 +86,6 @@ import {
import { type Collection, type Game, type GameVersion } from "@prisma/client";
import { PlusIcon } from "@heroicons/vue/20/solid";
const gamesData = await $dropFetch<(Game & { versions: GameVersion[] })[]>(
"/api/v1/store/recent"
);
const collections = await useCollections();
const collectionCreateOpen = ref(false);