打开网址:https://github.com/settings/tokens
点击生成新的token


输入名字,选择不过期,然后勾选repo


复制token,新建一个repo,例如bfw/test

<!DOCTYPE html>
<html>
<head>
<title>GitHub API File Upload</title>
</head>
<body>
<input type="file" id="fileInput" />
<button id="uploadButton">Upload</button>
<script>
document.getElementById('uploadButton').addEventListener('click', async () => {
const token = '';//换成你自己的
const repo = 'bfw/test';//换成你自己的
const fileInput = document.getElementById('fileInput');
const file = fileInput.files[0];
if (!file) {
alert('Please select a file.');
return;
}
const reader = new FileReader();
reader.onload = async (event) => {
const fileContent = event.target.result.split(',')[1];
const apiUrl = `https://api.github.com/repos/${repo}/contents/${file.name}`;
const headers = new Headers();
headers.append('Authorization', `token ${token}`);
const requestBody = {
message: 'Upload file',
content: fileContent,
};
try {
const response = await fetch(apiUrl, {
method: 'PUT',
headers,
body: JSON.stringify(requestBody),
});
if (response.ok) {
alert('File uploaded successfully.');
//cdn访问地址为
// 'https://fastly.jsdelivr.net/gh/' + repo + '@main/' + file.name;
} else {
alert('Error uploading file.');
}
} catch (error) {
console.error('Error:', error);
alert('An error occurred.');
}
};
reader.readAsDataURL(file);
});
</script>
</body>
</html> 网友回复


