如何在GitHub Pages中通过GitHub API获取个人公开仓库数量?
解决GitHub Pages无法获取GitHub公开仓库数量的问题
问题根源
- GitHub Pages是纯静态托管服务,不支持Node.js的
process.env环境变量读取,所以你在Pages环境下无法获取到ACCESS_TOKEN。 - 核心误区:获取用户公开仓库数量属于公开信息,完全不需要访问令牌,GitHub API的
/users/{username}端点无需授权即可访问。
修正后的代码
const username = "sevro49"; const projectsElement = document.querySelector(".profile div:nth-child(2) .number-of-repos"); // 直接请求公开API,无需令牌 fetch(`https://api.github.com/users/${username}`) .then(response => { if (!response.ok) throw new Error(`请求失败:状态码 ${response.status}`); return response.json(); }) .then(data => { projectsElement.innerText = data.public_repos; }) .catch(error => console.error('获取仓库数量出错:', error));
额外提醒
- 这段代码无需区分本地和Pages环境,两端都能正常运行。
- 绝对不要在前端代码或GitHub仓库中存储/暴露GitHub访问令牌,一旦泄露,他人可利用令牌操作你的仓库、创建Gist等,造成安全风险。
内容的提问来源于stack exchange,提问作者sevro49
相关产品推荐
相关产品推荐

