diff --git a/src/routes/api/slugify/+server.ts b/src/routes/api/slugify/+server.ts index 444caf6..10f4522 100644 --- a/src/routes/api/slugify/+server.ts +++ b/src/routes/api/slugify/+server.ts @@ -32,7 +32,8 @@ export const POST: RequestHandler = async ({ request, platform }) => { try { const res = (await platform.env.AI.run('@cf/meta/m2m100_418m', { text, - target_lang: 'english' + source_lang: 'zh', + target_lang: 'en' })) as { translated_text?: string }; if (res?.translated_text) { @@ -67,13 +68,18 @@ export const POST: RequestHandler = async ({ request, platform }) => { } } - // 最底层的安全兜底:若没有任何英文结果返回,生成基于拼音/基本替换的 slug + // 最底层的安全兜底:若没有任何英文结果返回,且全部是中文导致正则替换为空 const fallbackSlug = text .toLowerCase() .replace(/\s+/g, '-') .replace(/[^\w-]/g, ''); - return json({ slug: fallbackSlug || 'post' }); + // 如果 fallbackSlug 仍为空(例如纯中文被全替换了),则使用时间戳或者特定前缀 + if (!fallbackSlug) { + return json({ slug: `post-${Date.now().toString(36)}` }); + } + + return json({ slug: fallbackSlug }); } catch (error) { console.error('Slug生成接口未知错误:', error); return json({ slug: '' }, { status: 500 });