From 8f408e03a9ccb8e612b0f4ec9fa22868f96f6586 Mon Sep 17 00:00:00 2001 From: hailin Date: Sun, 15 Jun 2025 13:10:58 +0800 Subject: [PATCH] . --- .../app/[locale]/details/[slug]/page.tsx | 35 ++++++++++--------- apps/blogai/lib/http/get-base-url.ts | 18 ++++++++++ 2 files changed, 36 insertions(+), 17 deletions(-) create mode 100644 apps/blogai/lib/http/get-base-url.ts diff --git a/apps/blogai/app/[locale]/details/[slug]/page.tsx b/apps/blogai/app/[locale]/details/[slug]/page.tsx index da9189e..7c0106a 100644 --- a/apps/blogai/app/[locale]/details/[slug]/page.tsx +++ b/apps/blogai/app/[locale]/details/[slug]/page.tsx @@ -18,6 +18,7 @@ import { useTranslation } from "react-i18next"; import { DetailPageHeader } from '@/components/header' import { getRuntimeEnv } from "@/lib/ipconfig"; +import { getBaseUrl } from "@/lib/http/get-base-url"; // ✅ 不是 export 它,而是 import 用 export const runtime = "nodejs"; @@ -26,25 +27,25 @@ type Props = { searchParams: { [key: string]: string | string[] | undefined }; }; -// 推荐用法,async 获取 -export async function getBaseUrl() { - let ip = await getRuntimeEnv("SUPABASE_URL"); - if (!ip) throw new Error("SUPABASE_URL 获取失败,无法构建 baseUrl"); +// // 推荐用法,async 获取 +// export async function getBaseUrl() { +// let ip = await getRuntimeEnv("SUPABASE_URL"); +// if (!ip) throw new Error("SUPABASE_URL 获取失败,无法构建 baseUrl"); - // 判断协议 - let protocol = "http"; - if ( - typeof window !== "undefined" && - window.location && - window.location.protocol === "https:" - ) { - protocol = "https"; - ip = window.location.hostname; // ✅ HTTPS 场景下安全替换 IP 为域名 - } +// // 判断协议 +// let protocol = "http"; +// if ( +// typeof window !== "undefined" && +// window.location && +// window.location.protocol === "https:" +// ) { +// protocol = "https"; +// ip = window.location.hostname; // ✅ HTTPS 场景下安全替换 IP 为域名 +// } - // 拼接 - return `${protocol}://${ip}`; -} +// // 拼接 +// return `${protocol}://${ip}`; +// } export async function generateMetadata({ params }: Props): Promise { diff --git a/apps/blogai/lib/http/get-base-url.ts b/apps/blogai/lib/http/get-base-url.ts new file mode 100644 index 0000000..5162366 --- /dev/null +++ b/apps/blogai/lib/http/get-base-url.ts @@ -0,0 +1,18 @@ +import { getRuntimeEnv } from "@/lib/ipconfig"; + +export async function getBaseUrl() { + let ip = await getRuntimeEnv("SUPABASE_URL"); + if (!ip) throw new Error("SUPABASE_URL 获取失败,无法构建 baseUrl"); + + let protocol = "http"; + if ( + typeof window !== "undefined" && + window.location && + window.location.protocol === "https:" + ) { + protocol = "https"; + ip = window.location.hostname; + } + + return `${protocol}://${ip}`; +}