如何访问 Github 用户的 atom 提要以获取项目的提交?或替代
Posted
技术标签:
【中文标题】如何访问 Github 用户的 atom 提要以获取项目的提交?或替代【英文标题】:How to access to the atom feed of a Github user to get commits from a project? or alternative 【发布时间】:2017-10-03 09:57:36 【问题描述】:您好,我是 Laravel 和一般编程新手。
我正在尝试做一个应用程序来跟踪我在 GitHub 上的团队项目的提交历史。我现在使用 `git log` 来执行此操作,但我的想法是将其放在服务器上并从任何地方访问,而无需手动执行命令(不知道这是否可能)。
所以,目前,对我来说,解决方案是阅读项目用户成员的 atom 提要。问题是 - 出于显而易见的原因 - 私人回购不能直接访问。 GitHub文档说可以使用基本身份验证访问它们,但目前我无法做到这一点。即使使用 Oath2 创建和应用程序并授予权限,我也尝试在 Postman 上进行测试,但不知道为什么它不起作用。
顺便说一句,对不起我的英语。在此先感谢:)
【问题讨论】:
也许能帮上忙***.com/questions/7353538/… 【参考方案1】:Github provides a public API 用于以 json 格式检索用户事件。
如果您在 (unix) 控制台中键入:
curl https://api.github.com/users/sea-reel/events
…你会得到我最近一次公开提交的列表。
要使用 Laravel 实现这一点,您可以简单地使用 file_get_contents() :
Route::get('/commits/username', function($username)
$url = "https://username:password@api.github.com/users/$username/events";
$json = json_decode(file_get_contents($url),true);
dd($json);
);
要同时访问来自私有存储库的提交,您可以使用various authentication methods provided by Github's API 之一。这里我使用了基本身份验证,但您可能会发现使用 OAuth 和存储密钥而不是原始密码更安全。
【讨论】:
以上是关于如何访问 Github 用户的 atom 提要以获取项目的提交?或替代的主要内容,如果未能解决你的问题,请参考以下文章