用 Nextjs 13 tx 怎么获取 Discussions 数据
要获取 Discussions 数据,你需要使用 GitHub API。先在 GitHub 上创建一个 OAuth App 并且获取 access token。
在你的 Next.js 13 应用中,你可以使用 fetch 函数来从 GitHub API 获取 Discussions 数据。例如:
export async function getDiscussions() {
const token = process.env.GITHUB_ACCESS_TOKEN;
const res = await fetch('https://api.github.com/repos/:owner/:repo/discussions', {
headers: {
Authorization: `Bearer ${token}`,
Accept: 'application/vnd.github.echo-preview+json',
},
});
const data = await res.json();
return data;
}
这个函数将使用 GitHub API 获取指定仓库的 Discussions 数据。你需要将 :owner 和 :repo 替换为你的仓库所有者和仓库名称。
另外,需要注意的是,GitHub API 的 Discussions 功能是在 preview 模式下,因此需要在请求头中添加 Accept: 'application/vnd.github.echo-preview+json'。
最后,我们将返回的数据作为一个数组返回。你可以在你的 Next.js 页面中使用这个函数来获取 Discussions 数据,例如:
import { getDiscussions } from '../utils/github';
export default function Home({ discussions }) {
return (
<div>
{discussions.map((discussion) => (
<div key={discussion.id}>{discussion.title}</div>
))}
</div>
);
}
export async function getStaticProps() {
const discussions = await getDiscussions();
return {
props: {
discussions,
},
};
}
这个页面将获取 Discussions 数据并将它们通过一个简单的列表展示出来
原文地址: https://www.cveoy.top/t/topic/efHl 著作权归作者所有。请勿转载和采集!