添加错误重试机制
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-04-07 12:19:13 +08:00
parent 880afe34ab
commit ca1cf10aa8
2 changed files with 16 additions and 3 deletions

View File

@ -1,6 +1,6 @@
---
import FullLayoutV1 from '../layout/FullLayoutV1.astro'
import { listBlogs } from '../lib/apis/legacy/blog'
import { listBlogs, type ListBlogItemType } from '../lib/apis/legacy/blog'
import BlogCard from '../components/BlogCard.astro'
import BlogHeaderImage from '../assets/blogs-header.webp'
import { Image } from 'astro:assets'
@ -10,7 +10,13 @@ export const prerender = false
const _page = parseInt(Astro.url.searchParams.get('page') || '1')
const page = isNaN(_page) ? 1 : Math.max(1, _page)
const blogs = await listBlogs({ page, limit: 100 })
let blogs: ListBlogItemType[] = []
try {
blogs = await listBlogs({ page, limit: 100 })
} catch {
return Astro.redirect('/500')
}
---
<FullLayoutV1 withGap title="博客列表 - 小帕的小窝">

View File

@ -17,7 +17,14 @@ if (isNaN(blog_id_num) || blog_id_num < 0) {
return Astro.redirect('/404')
}
const blogData = await getBlog(blog_id_num)
let blogData = null
try {
blogData = await getBlog(blog_id_num)
} catch (e) {
return Astro.redirect('/500')
}
if (blogData === null) {
return Astro.redirect('/404')
}