我想获取属于给定状态的所有交易。这应该按时间顺序并使用REST。
有什么建议可以轻松实现这一目标?
答案 0 :(得分:1)
完成此操作的推荐方法是检测事务处理器,以便它发出Events
并订阅来自可以将信息存储在链下DB中的单独应用程序的事务。这样,您就可以灵活地完成所需的工作。
没有REST API可以满足您的要求。您可以使用它们的组合来实现它,但这将意味着深入各个块和事务列表,并过滤到要获取其更改历史记录的状态。
答案 1 :(得分:-1)
好吧,我不知道这里的状态是什么,如果您想获得与特定家庭相关的状态,则可以使用对python或其他语言不太了解的任何sdks来完成,但是对于javascript,我有按照以下方式完成。
const getNamespace = family => hash(family).substring(0, 6);
const geturl = `${restapiAddress}/state`;
axios(geturl, {
method: 'GET',
})
.then((response) => {
const resultArray = response.data.data.reduce((res, element) => {
const namespace = getNamespace('TPNAME');
if (element.address.startsWith(namespace)) {
const buf = Buffer.from(element.data, 'base64');
const responseStr = cbor.decode(Buffer.from(buf));
res.push(responseStr);
}
return res;
}, []);
console.log("result",resultArray);
})
.catch((err) => {
if (err.response && err.response.status === 404) { console.log("nothing there"); } else {
console.log("Error");
}
});
然后您可以进行排序或您想执行的任何操作