使用GitHub Api和Ember检索最新的提交链接和消息
Retrieve latest Commit links and message with GitHub Api and Ember
我用这个jsbin重现了我的案例http://emberjs.jsbin.com/xeninaceze/edit?js,输出
Github API允许我按作者获取事件列表:
API链接-API.github.com/users/:user/events
我可以访问过滤事件"PushEvent"的提交消息,这非常好,因为我可以流式传输我最新的提交消息。
var gitactivitiesPromise = function() {
return new Ember.RSVP.Promise(function (resolve) {
Ember.$.ajax(eventsAct, {
success: function(events) {
var result = [];
events.filter(function(event) {
return event.type == 'PushEvent';
}).forEach(function(item){
item.payload.commits.map(function(commit){
result.push(store.createRecord('commit', {
message: commit.message,
}));
});
});
resolve(result);
},
error: function(reason) {
reject(reason);
}
});
});
};
问题是,我想在消息旁边流式传输,还有他自己的url链接。html_url
我需要知道如何应对?由于提交url链接不在API链接中
- api.github.com/users/:user/events
但它们在以下api 中
- api.github.com/repo/:user/repo/commits/branch
这使得访问最新提交url链接html_url
变得更加复杂
这是我尝试做的一个很好的例子
http://zmoazeni.github.io/gitspective/#
它在推送事件中流式传输带有链接
在我看来,所有相关数据都已经存在:
{
"id": "3414229549",
"type": "PushEvent",
"actor": {
...
"login": "paulirish"
},
"repo": {
...
"name": "GoogleChrome/devtools-docs"
},
"payload": {
...
"commits": [
{
...
"message": "fish shell. really liking it.",
"sha": "1f9740c9dd07f166cb4b92ad053b17dbc014145b"
},
...
您可以以actor
的形式访问作者URL,以repo
的形式访问存储库。有了这个,很容易构建相关链接:
...
.forEach(function(item) {
var repoUrl = 'https://github.com/' + item.repo.name;
var authorUrl = 'https://github.com/' + item.actor.login;
item.payload.commits.map(function(commit) {
result.push(store.createRecord('commit', {
authorUrl: authorUrl,
repositoryUrl: repoUrl,
commitUrl: repoUrl + '/commit/' + commit.sha,
message: commit.message
}));
});
})
...
更新的JSBin:http://emberjs.jsbin.com/feyedujulu/1/edit?js,输出
相关文章:
- 我如何重新加载URL链接,在我点击提交按钮后它保持不变
- 如何在用户提交链接时添加提取推文并将其发布到站点的功能
- 在我的Javascript和HTML之间的表单提交按钮链接中遇到问题
- 提交表单的可能性(左-/中-/在新选项卡或窗口中打开-)单击html链接
- 提交前验证超链接和复选框
- 提交链接时不刷新,也不使用ajax
- 将提交按钮的HTML转换为链接HTML
- 按钮对链接对输入类型=“;提交”;在表格上
- 提交带有链接的表单
- 制作超链接 同时提交一些表单信息
- 如何强制用户在提交表单之前单击链接
- 点击链接提交表格并发送到多个电子邮件 ID
- 点击提交按钮后如何显示链接
- 使用 jquery 提交表单后,Jquery 不发送帖子链接
- Ajax,通过使用指向同一页面的链接提交表单
- Javascript:尝试在新窗口中打开表单提交按钮,链接由单选按钮确定
- HTML 弹出窗口,其中包含表单提交的链接
- 使用GitHub Api和Ember检索最新的提交链接和消息
- JavaScript表单提交链接
- 显示提交<链接onchange并传递已更改的输入框的值