1

我最近开始使用带有 LBAPI 的“removeUnauthorizedSnapshots”参数来避免我之前遇到的权限错误。使用 LBAPI 收集工作区中所有工作项的详细信息比 WSAPI 快得多,但是由于我们的工作区中有大约 25,000 个叶子故事,因此必须使用多个 API 请求来收集这些数据。在请求中添加“limit : Infinity”参数时,您可以在网络流量中看到,虽然实际上发出了第二个请求,但未包含“removeUnauthorizedSnapshots”参数,因此导致权限错误。

有没有计划将这个参数的官方支持添加到 LBAPI 中,而不是手动添加到请求中?

谢谢!

4

2 回答 2

1

同时,这是一个使用“loadPage”函数代替“load”的解决方案:

var allRecords = [];
function getWorkItems(pageNumber) {
    Ext.create('Rally.data.lookback.SnapshotStore', {
        fetch     : ['Name','ObjectID','PlanEstimate'],
        filters   : [{
            property : '__At',
            value    : 'current'
        },{
            property : '_TypeHierarchy',
            value    : 'HierarchicalRequirement'
        },{
            property : 'Children',
            value    : null
        }]
    }).loadPage(pageNumber, {
        params : {
            compress                    : true,
            removeUnauthorizedSnapshots : true
        },
        callback : function(records, operation, success) {
            allRecords = Ext.Array.merge(allRecords, records);
            if (operation.response.StartIndex + operation.response.PageSize >= operation.response.TotalResultCount) {
                //All records loaded
            } else {
                getWorkItems(++pageNumber);
            }
        }
    });
}(1);
于 2013-09-25T16:39:06.760 回答
0

我提交了一个错误。感谢您提请我们注意。正如我在另一篇文章中评论的那样,我们在积压工作中添加了一个故事,以将“removeUnauthorized”添加到 Rally.data.lookback.SnapshotStore 配置中,但同时建议的解决方法显然存在缺陷,并且额外的参数不适用于后续请求,因为总结果数超过 20K 的场景显示。

于 2013-09-25T14:07:50.427 回答