react-floating-profile
Version:
React component to display your github profile <p align="left"> <a href="https://www.npmjs.com/package/react-floating-profile"><img src="https://flat.badgen.net/npm/v/react-floating-profile" alt="react-floating-profile version" /></a> <a href="http
34 lines (26 loc) • 1.01 kB
text/typescript
export default async function getUserReadme(username: string, accessToken: string) {
const README_OBJ_URL = `https://api.github.com/repos/${username}/${username}/contents/README.md`;
// README 파일 정보 가져오기
const objResponse = await fetch(README_OBJ_URL, {
method: "GET",
headers: {
...(accessToken ? { Authorization: `Bearer ${accessToken}` } : {}),
Accept: "application/vnd.github+json",
},
});
if (!objResponse.ok) {
const errorData = await objResponse.json();
throw new Error(`GitHub API Error: ${errorData.message}`);
}
const readmeObj = await objResponse.json();
const downloadUrl = readmeObj.download_url;
if (!downloadUrl) {
throw new Error("download_url not found in response.");
}
// 실제 README.md 내용 가져오기
const response = await fetch(downloadUrl);
if (!response.ok) {
throw new Error(`Failed to fetch README.md from ${downloadUrl}`);
}
return response.text();
}