diff --git a/app/[nsfront]/[nsbehind]/[name]/[version]/layout.tsx b/app/[nsfront]/[nsbehind]/[name]/[version]/layout.tsx
index 3234d3c..59768bf 100644
--- a/app/[nsfront]/[nsbehind]/[name]/[version]/layout.tsx
+++ b/app/[nsfront]/[nsbehind]/[name]/[version]/layout.tsx
@@ -14,11 +14,11 @@ export default function Layout({
// 判断当前页面是否为SenseLeak页面
const isSenseLeakPage = pathname.includes('/senseleak');
-
+ const isMircheckerPage = pathname.includes('/mirchecker');
return (
diff --git a/app/api/crates/[nsfront]/[nsbehind]/[cratename]/[version]/mirchecker/route.tsx b/app/api/crates/[nsfront]/[nsbehind]/[cratename]/[version]/mirchecker/route.tsx
new file mode 100644
index 0000000..26c2224
--- /dev/null
+++ b/app/api/crates/[nsfront]/[nsbehind]/[cratename]/[version]/mirchecker/route.tsx
@@ -0,0 +1,22 @@
+import { NextRequest, NextResponse } from "next/server";
+type Params = Promise<{ nsfront: string, nsbehind: string, cratename: string, version: string }>
+export async function GET(req: NextRequest, props: { params: Params }) {
+ try {
+ const params = await props.params
+ const { nsfront, nsbehind, cratename, version } = params;
+ const endpoint = process.env.CRATES_PRO_INTERNAL_HOST;
+
+ const externalApiUrl = `${endpoint}/api/crates/${nsfront}/${nsbehind}/${cratename}/${version}/mirchecker`;
+ const externalRes = await fetch(externalApiUrl);
+ if (!externalRes.ok) {
+ throw new Error('Failed to fetch external data');
+ }
+ const externalData = await externalRes.json();
+ console.log('External API Response:', externalData);
+ return NextResponse.json(externalData);
+ } catch (error) {
+ console.error('Error:', error);
+ return NextResponse.json({ error: 'Internal Server Error' }, { status: 500 });
+
+ }
+}
\ No newline at end of file