import { defineEventHandler, getHeader, getRequestURL, getRouterParam, proxyRequest } from 'h3' import { useRuntimeConfig } from '#imports' function joinURL(base: string, path: string) { if (!path) return base return base.replace(/\/+$/, '') + '/' + path.replace(/^\/+/, '') } /** * 公开 CMS 接口代理 * 将 /api/cms/* 代理到 mp-api,无需登录(不要求 Authorization) */ export default defineEventHandler((event) => { const config = useRuntimeConfig() const mpApiBase = config.public.mpApiBase || 'https://mp-api.websoft.top' const path = getRouterParam(event, 'path') || '' const search = getRequestURL(event).search const target = joinURL(mpApiBase + '/api/cms', path) + search const tenantId = getHeader(event, 'tenantid') || config.public.tenantId return proxyRequest(event, target, { headers: { TenantId: String(tenantId) } }) })