用 Nextjs 13 tx 怎么获取 Discussions 评论总数
要获取 Discussions 评论总数,您需要使用 GitHub REST API。具体步骤如下:
-
从 GitHub 的开发者设置页面获取您的个人访问令牌。这个令牌将允许您通过 API 访问 GitHub 的资源。请确保您的令牌具有“repo”权限,以便访问存储库的讨论。
-
在 Next.js 13 中,您可以使用内置的
fetch函数进行 API 调用。以下是一个示例代码:
export async function getDiscussionsCount() {
const token = process.env.GITHUB_TOKEN;
const repo = process.env.GITHUB_REPO;
const url = `https://api.github.com/repos/${repo}/discussions`;
const response = await fetch(url, {
headers: {
Authorization: `Bearer ${token}`,
Accept: "application/vnd.github.squirrel-girl-preview+json", // 这是 GitHub Discussions 的预览版 API
},
});
const data = await response.json();
return data.total_count;
}
在这个代码中,我们首先从环境变量中获取 GitHub 访问令牌和存储库名称。然后,我们使用 fetch 函数调用 Discussions API,并在请求头中包含我们的令牌。我们还指定了使用预览版 API 的 MIME 类型,因为 Discussions API 目前仍处于预览状态。
最后,我们解析 API 响应并返回评论总数。
- 在您的 Next.js 页面或组件中,您可以调用
getDiscussionsCount函数以获取评论总数。例如:
import { getDiscussionsCount } from "../utils/github";
export default function DiscussionsPage({ count }) {
return <div>总评论数:{count}</div>;
}
export async function getStaticProps() {
const count = await getDiscussionsCount();
return { props: { count } };
}
在这个代码中,我们在 Next.js 的 getStaticProps 函数中调用 getDiscussionsCount 函数,并将评论总数作为属性传递给页面组件。然后,我们在页面组件中显示评论总数。
希望这可以帮助您获取 Discussions 评论总数
原文地址: https://www.cveoy.top/t/topic/efHo 著作权归作者所有。请勿转载和采集!