github上传文件api
时间: 2023-08-24 08:09:57 浏览: 121
GitHub 提供了多种 API 来上传文件,其中最常用的是 Git 和 REST API。
1. 使用 Git API
首先,在本地创建一个 Git 仓库,并将要上传的文件添加到该仓库中:
```
$ mkdir myproject
$ cd myproject
$ git init
$ touch README.md
$ git add README.md
$ git commit -m "Initial commit"
```
然后,将本地仓库与 GitHub 上的远程仓库进行关联:
```
$ git remote add origin https://github.com/username/myproject.git
```
最后,将本地仓库的代码推送到 GitHub 上:
```
$ git push -u origin master
```
2. 使用 REST API
GitHub 的 REST API 提供了上传文件的功能,需要进行身份验证,并使用 POST 请求向指定的仓库上传文件。
首先,使用 OAuth 2.0 进行身份验证,获取 access_token:
```
$ curl -u username:password https://api.github.com/authorizations \
--data '{"scopes":["repo"],"note":"GitHub API"}'
```
然后,使用 access_token 进行文件上传:
```
$ curl -X POST https://uploads.github.com/repos/username/myproject/contents/README.md \
-H "Authorization: token <access_token>" \
-H "Content-Type: application/json" \
-d '{"message":"Add README.md","content":"<base64-encoded-content>"}'
```
其中,<base64-encoded-content> 是文件内容的 Base64 编码。在上传文件之前,需要将文件内容进行 Base64 编码。可以使用以下命令将文件内容进行编码:
```
$ base64 README.md
```