2013-02-27 97 views
2

在过去的几个小时里,我一直在尝试通过他们的API来更新GitHub Gist无济于事。我可以很容易POST到https://api.github.com/gists并创建一个新的Gist,但我无法获得PATCH到https://api.github.com/gists/:id工作。我如何通过他们的API更新Gist?我错过了一些重要的细节?如何通过GitHub API更新Gist?

这是我现在的困境的的jsfiddle:http://jsfiddle.net/ZzUsv/4/

代码本身:

var Gist = Backbone.Model.extend({ 
    urlRoot: 'https://api.github.com/gists', 
    defaults: { 
     description: 'A terse gist', 
     'public': true, 
     files: { 
      'html.html': { 
       content: 'test' 
      }, 
      'css.css': { 
       content: 'test' 
      }, 
      'js.js': { 
       content: 'test' 
      } 
     } 
    } 
}); 

var my_gist = new Gist; 
my_gist.save(my_gist.toJSON(), { 
    success: function(){ 
     $('body').append('successfully created gist'); 
     my_gist.save({ description: '<div>A less terse gist</div>' }, { 
      patch: true, 
      success: function(){ 
       $('body').append('<div>successfully updated gist</div>'); 
      }, 
      error: function(model, xhr, options){ 
       $('body').append('<div><b>error updating gist</b></div>'); 
       $('body').append(JSON.stringify(xhr)); 
      } 
     }); 
    } 
}); 

相关文章:http://developer.github.com/v3/gists/#edit-a-gist

+0

你使用SSL? Coz github使用它,你不能通过不同的协议使用JSON。 – primetwig 2013-02-27 09:13:30

回答

6

看起来这是文档质量很差的简单情况。看起来你无法编辑或删除匿名Gist,尽管有ID提供给你。