我需要获取托管在GitHub库中的文件的内容。我希望获得带有元数据的JSON响应。我已经用cURL尝试了很多URL,只得到{"message":"Not Found"}
的响应。我只需要URL结构。如果它很重要,它来自GitHub上的一个组织。这就是我认为应该工作,但不会:如何通过GitHub API获取文件
http://api.github.com/repos/<organization>/<repository>/git/branches/<branch>/<file>
我需要获取托管在GitHub库中的文件的内容。我希望获得带有元数据的JSON响应。我已经用cURL尝试了很多URL,只得到{"message":"Not Found"}
的响应。我只需要URL结构。如果它很重要,它来自GitHub上的一个组织。这就是我认为应该工作,但不会:如何通过GitHub API获取文件
http://api.github.com/repos/<organization>/<repository>/git/branches/<branch>/<file>
由于描述(位于http://developer.github.com/v3/repos/contents/)说:
/回购/:业主/:回购/内容/:路径
的Ajax代码将是:
$.ajax({
url: readme_uri,
dataType: 'jsonp',
success: function(results)
{
var content = results.data.content;
});
通过适当/回购更换readme_uri /:所有者/:回购/内容/:路径。
这是新的吗?当我问起时,我发誓不在这里。我查看了这个开发页面。谢谢。 – 2013-02-08 14:42:05
看起来像GitHub发送Base64编码的文件内容... – taseenb 2014-03-30 02:50:00
@taseenb使用'https://raw.githubusercontent.com/:owner /:repo/master /:path'来获取原始数据(二进制,不是Base64) – 2015-08-31 21:44:11
请参阅http://stackoverflow.com/questions/9240961/github-jsonp-source-code-api/9241535#9241535 – nulltoken 2012-02-14 06:32:01
三个简单的JSON响应请求?良好的法律。根本不直观。当然有更优雅的方式。 – 2012-02-14 08:53:51
这可能是其API中最弱的一个位。您可以使用他们的Trees API导航结构(在文档中的Git Data中)。为了使用它,你需要一个沙。你可以从回购分行中挖掘出来。也许你更容易像这样使用raw.github.com? raw.github.com/:user/:repo/:branch/:filename。您可以轻松地将这两种方法结合起来,以确定是否存在某个文件,然后获取它。 – 2012-05-23 12:07:28