如何使用github API从Web浏览器编辑github文件?

时间:2016-10-29 02:31:52

标签: javascript jquery ajax github github-api

我正在尝试对我的存储库中的文件实施PUT编辑,并且遇到了问题...这就是我到目前为止所拥有的...

// GET content from github file
$.get('https://api.github.com/repos/redemption23/trackerApp/contents/file.txt', function(data){
  var content = atob(data.content);
  $('#box').append(content);
});

这样可以很好地提取内容......但是尝试将编辑内容重新输入文件失败了..

// PUT edit to github file

$.ajax({
  method: "PUT",
  url: "https://api.github.com/repos/redemption23/trackerApp/contents/file.txt"
  data: {
    "message": "my commit message",
    "committer": {
      "name": "Matt",
      "email": //omitted for stack overflow
    },
    "content": text,
    "sha": //omitted for stack overflow
  }
})
  .done(function( msg ) {
    console.log( "Data Saved: " + msg );
  });
console.log(text);

我可以从文件中提取内容并将其附加到我的网络应用程序的正文中,但是尝试通过api发送编辑是没有工作..返回此错误..

jquery.min.js:4 PUT https://api.github.com/repos/redemption23/trackerApp/contents/file.txt

任何想法??

1 个答案:

答案 0 :(得分:3)

GitHub API Commits所示,您需要在推送新内容时为您的网址提供某种形式的authentication

-u "username:PASSWORD"access_token=OAUTH-TOKEN参数。

另见" POST to GitHub v3 API using ajax and JavaScript fails with a HTTP 404"一个完整的例子。