打开网址: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>
网友回复