首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用资产id在hyperledger composer中获取资产历史记录?

在Hyperledger Composer中,可以使用资产ID来获取资产的历史记录。资产历史记录是指资产在区块链网络中的所有状态变更记录。

要使用资产ID获取资产历史记录,可以按照以下步骤进行操作:

  1. 首先,确保已经安装和配置了Hyperledger Composer开发环境。
  2. 在你的Composer业务网络定义文件(.cto文件)中,确保你的资产类型定义了HistorianRecord的关系。例如:
代码语言:txt
复制
asset MyAsset identified by assetId {
  o String assetId
  --> HistorianRecord[] history
}
  1. 在你的交易处理函数(.js文件)中,使用getAssetRegistry方法获取资产的注册表,并使用get方法根据资产ID获取资产实例。例如:
代码语言:txt
复制
/**
 * 获取资产历史记录
 * @param {org.example.network.GetAssetHistory} tx - 获取资产历史记录交易
 * @transaction
 */
async function getAssetHistory(tx) {
  const assetRegistry = await getAssetRegistry('org.example.network.MyAsset');
  const asset = await assetRegistry.get(tx.assetId);

  // 获取资产历史记录
  const history = asset.history;

  // 返回资产历史记录
  return history;
}
  1. 在你的Composer业务网络中定义一个交易类型,用于触发获取资产历史记录的交易。例如:
代码语言:txt
复制
transaction GetAssetHistory {
  o String assetId
}
  1. 部署和启动你的Composer业务网络。
  2. 使用Composer的REST API或SDK,调用GetAssetHistory交易,并传入资产ID作为参数。例如,使用REST API进行调用:
代码语言:txt
复制
POST /api/GetAssetHistory
{
  "$class": "org.example.network.GetAssetHistory",
  "assetId": "ASSET_ID_HERE"
}
  1. 返回的结果将包含资产的历史记录,你可以根据需要进行处理和展示。

需要注意的是,Hyperledger Composer是一个开源的区块链开发框架,用于构建和部署区块链解决方案。在回答中,我没有提及特定的云计算品牌商,但你可以根据自己的需求选择适合的云计算平台,并使用其相应的产品和服务来部署和运行Hyperledger Composer网络。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用Hyperledger Fabric和Composer实现区块链应用程序

这可用于实现Go,Java或Node.js等语言中的规则,这些规则定义读取权限或资产修改。执行链代码功能可以读取和返回资产和/或创建和修改资产并将它们存储本地分类帐数据库。...使用Composer添加更简单的概念 Hyperledger-ComposerHyperledger生态系统的工具之一。你可以将其视为Fabric的框架。...我们不直接使用Fabric概念开发链代码,权限或任何模型,因为Composer提供了更多优势。 实施功能 现在我们我们选择的目录创建我们的BND项目。...当然,我们想测试这个业务逻辑并将我们的单元测试存储test/文件夹。模型定义(参与者,资产,交易等)models/。 我们想首先为所需的区块链网络建模。...首先,我们致力于创建引擎资产。引擎应该以UUID格式获得随机生成的ID,并且应该从一开始就始终属于制造商。所以我们清空logic.js文件并从头开始。

2.1K20

如何用Python&Fabric打造区块链“淘宝”商城

区块链网络中所有资产和参与者都需要被指定用于区分的唯一标识符,代码我们使用的是 cardId。 此外,我们还定义了一个枚举对象 GameType cardType,它基于枚举器。...终端输入 composer-rest-server,指定使用的区块链网络 admin @ cards-trading-network,选择不使用命名空间(never use namespaces),...要创建 Angular Web 应用程序,终端输入 yo hyperledger-composer,选择 Angular,选择使用卡 admin @ cards-trading-network ,连接到当前业务网络和...上图中创建交易还需要填写交易ID(transactionId) 和时间戳(timestamp),然而我们并没有模型文件添加这些字段。 不过,我们的区块链网络存储了这些所有交易固有的值。...你已经 Hyperledger Fabric上成功构建并部署了区块链业务网络。你还为该网络生成了一个 REST API 服务器,并学习了如何创建与 REST API 交互的 Web 应用程序。

2.3K40
  • 行政固定资产工作如何提升员工的体验?

    很多企业的固定资产管理都是由行政部门完成的。管理好固定资产,为企业降本增效的同时,行政人员也要考虑到如何提升员工的体验,彰显行政部门的工作能力。易点易动随机采访了几个企业的行政人员。...我们来看看行政人员跟固定资产管理的爱恨情仇以及普通员工跟固定资产之间发生的小插曲。...、笔、本等低值易耗品,易点易动系统的库存管理模块,固定产管理员可设置好流程让员工直接申请,然后领用后员工端进行签字即可。...固定资产流转可随时追溯,责权更明晰 易点易动固定资产管理系统实行一物一码式管理模式,将固定资产信息录入系统后,会生成对应的二维码,将该固定资产跟二维码标签进行绑定后,每个固定资产的领用和退还都需要相关负责人审批...如果该盘点中有某些员工的名下的资产,那么这些员工可以员工端收到通知。员工登陆进去员工端之后,可以手机扫码进行盘点,盘点后提交盘点结果。管理员可设置是否需要员工必须拍照上传资产照片。

    90630

    使用composer写一个简单的区块链互助保险应用

    仅仅针对这类模式的业务,分析如何使用composer来完成超级账本的智能合约开发。 从上面的场景来看,业务简单划分为: 参保、申请互助及审核(涉及人工参与不在此文讨论范围)、赔付;角色划分:参保人。...2 Composer简单了解 Composer github地址: https://github.com/hyperledger/composer Composer是基于HyperLedger fabic....qry 定义复杂查询 完成以上内容后,执行打包命令生成.bna文件,然后可以使用Composer Playground将bna部署到Hyperledger Fabric,并通过 Web页面测试业务逻辑...3 Composer本地环境部署 (本文主要写如何编写一个智能合约,详细的部署大家可以看原文档:https://hyperledger.github.io/composer/introduction/introduction.html...按payOut参数指定保单Id, 获取保单信息:参与人数、已赔付金额 2. 按payOut参数指定的赔付金额,给指定赔付人赔付的金额 3.

    1.5K130

    Hyperledger Fabric之模型

    Hyperledger Fabric当前主要使用Go语言和Nodejs开发链码, 使用Go兼容好些快些, BYFN官方例子安装Nodejs链码时间较长,时不时timeout(不排除环境配置差异或有误...另外一种开发模式是使用Hyperledger Composer类似javascript的语法定义资源和交易, 后面我们学习。 3....所以,通道保证交易广阔的网络私有,而私有数据集合保证交易通道的组织的下属私有。...但是,共识不仅是交易顺序如何达成一致,Hyperledger Fabric通过整个交易流程它的基础角色突出了这些差异,从计划和背书,到ordering排序,验证和提交,简而言之,共识被定义为整个周期的组成区块的一组交易的正确性的验证...除了大量的背书,验证和版本检查,整个交易流程使用身份验证。访问控制列表通过网络分层实现,交易计划在不同架构组件传递时,载体进行重复的签名,验证和认证。

    1K20

    区块链技术面试常被问到的Hyberledger Fabric关键概念

    其主要的区块链网络功能包括: Identity management 身份管理 Hyperledger Fabric 提供用户识别服务来管理用户的ID和参与者在网络内的授权。...可以很方便在客户端javascript定义资产,在你的Fabric应用中使用,通过Fabric Composer工具。 Fabric支持资产的交换,通过未使用交易输出作为后续交易的输入。...资产(和资产注册)Fabric作为键值对的集合存在,channel帐本带状态变更记录作为交易。Fabric允许任何资产采用二进制或JSON格式表示。...Chaincode仅安装在需要获取资产状态来执行读写操作的peers(换句话说,如果一个chaincode没有安装一个peer,它将不能与账本交互)。...然后,共识不仅是简单的同意交易的顺序,它是贯穿了整个交易流程的基本角色,从提案、背书、到确认顺序、验证和承诺,Hyperledger Fabric强调这样差异。

    1.7K10

    什么是Hyperledger?Linux如何围绕英特尔的区块链项目构建开放平台?

    执行董事Brian Behlendorf被问到是否会有一个“Hyperledger币”——一个Hyperledger区块链上运行的货币单位。...Sawtooth Lake的主要特征是它支持许可和无权限的应用和部署,并且它使用新开发的PoET的一致性算法。        PoET使用新的安全CPU指令,英特尔构建的新处理器也常使用这种CPU。...这包括他们批处理获得的事务并将它们完全提交。...目前测试的Sawtooth的另一个用例是数字资产。开发人员构建了一个平台,用于管理Sawtooth区块链上的数字资产所有权,该平台可以管理大范围的数字资产。...应用程序之间的连接点Sawtooth似乎是构建在区块链的任何类型的数字资产的市场,并且已经为用户提供了图形界面。

    95200

    Hyperledger Fabric基础之账本

    记账本我们天天都在使用,银行卡,支付宝和微信支付,我们最关心的肯定是账号上的余额了(即资产的当前状态),我想看下昨天我具体花了多少钱花在哪里就需要看交易的流水明细。...同理Hyperledger Fabric结构也是类似的,需要记录Asset资产的当前状态和交易的历史。 区块链的账本 区块链的账本包含两部分,world state(世界的状态?整体的状态?)...现实,World state常用数据库实现,数据库对于读取和存储状态都提供了高效的实现,是不是和no-sql的couchdb, mongodb有点像 :-) 交易保存了World state的变化,...基础完结, 后面我们会通过Hyperledger Fabric的入门例子, 实际操作和配置, 使用Go和Nodejs编写联链码。...再之后估计就是学下更方便些的Hyperledger Composer的方式去开发部署区块链。 但是相信有了前面这些核心基础知识, 后面的学习会相对简单很多。

    92600

    尝鲜使用微众银行WeCross实现基于哈希时间锁定的跨链转账

    哈希时间锁定巧妙地采用了哈希锁和时间锁,迫使资产的接收方最后期限内确定收款并产生一种收款证明给打款人,否则资产会归还给打款人。...收款证明能够被付款人用来获取接收人区块链上的等量价值的数量资产或触发其他事件。...如下图所示,我们用一个例子来阐述如何使用哈希时间锁定进行跨链的原子资产交换,假设 Alice 和 Bob 有资产交换的需求,Alice想用1个BTC和Bob换20个ETH。...,并设置一个较长的锁定时间 t1, 并设置了获取该BTC的一个条件:如果Bob能够提供h的原始值s就可以得到该BTC Bob观察到Alice合约锁定了一个BTC, 然后Bob锁定自己的20个ETH资产...ETH Bob观察到步骤5Alice的s值,将其发送给Alice的合约成功获取1个BTC 至此 Alice 和 Bob 完成了资产的交换 WeCross的技术方案,以上环节都是提案发起后,通过跨链路由调用对应的合约来自动完成

    1.9K50

    Fabric概览

    Consensus: 提供了灵活和可拓展的共识组件,来满足日常商业的需求 模块详细介绍 Assets 资产既包括有型的资产、也包含无形的资产Hyperledger使用chainCode去修改用户的资产...Privacy Hyperledger每个channel上采用了不可变的账本,chaincode用于维护、修改当前的资产状态。...,使用隐私数据集来私有数据库中分离它们的数据,channel账本上进行逻辑分离,仅有被授权的子组织可以访问这些隐私数据 因此:隐私的实现使用了两种概念:channel, privacy collection...级别上对对数据的访问控制进行维护和管理;Hyperledger使用身份许可和channel,来解决隐私和保密场景问题。...但是,共识不仅简单是对交易的排序,Hyperledger,通过其整个交易流程(提案、背书、排序、验证、提交)的基础作用,这种差别越加明显。

    44820

    一文了解超级账本DLT、库、开发工具有哪些, Hyperledger家族成员你认识几个?

    Fabric可能算是Hyperledger体系中最重要的项目。它十分强大,处于运行状态,且具备非常多功能。Fabric是一个经过许可的企业级DLT框架,采用模块化设计,使用时具有很强的灵活性。...它旨在通过一小组快速命令和查询来操纵账户和数字资产。 验证节点可以使用Gossip协议来分发半签名交易,作为多重签名交易的一部分。当分类账本状态存储PostgreSQL时,区块存储文件。...这也是个你开发要常考虑的项目。 Ursa是一个共享的加密库,旨在避免重复的加密工作(让人们使用同一个库),同时也以提高安全性为目标。它是使用C和Rust构建的,并且有着减少冗余工作的光荣使命。...截至2019年8月,鉴于Fabric 1.4+的原因,Composer项目(https://www.hyperledger.org/projects/composer)已被弃用。...如果你Hyperledger世界工作的话,这是一个能和你成为朋友的APP,十分受大家的欢迎。 最后是Grid,这是构建供应链解决方案的框架。

    1.1K10

    数字货币交易行为的可视化分析

    交易平台使用这种 钱包来保证数字资产的交易。 冷钱包地址:交易平台使用冷钱包作为数字加密资产的安全存储。...这一模式可以更大规模观察到: ? 2、交易所主钱包 -> 提现地址 中心化交易平台的另一个传统模式是发送交易到提币地址。...C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和交易等。...EOS钱包开发,本课程以手机EOS钱包的完整开发过程为主线,深入学习EOS区块链应用开发,课程内容即涵盖账户、计算资源、智能合约、动作与交易等EOS区块链的核心概念,同时也讲解如何使用eosjs和eosjs-ecc...tendermint开发,本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码

    2.2K30

    基于超级账本Fabric的供应链跟踪解决方案【开源】

    本项目为基于Hyperledger Fabric区块链的供应链资产跟踪解决方案,项目主要包括链码和Web应用两部分。...大理石资产的属性定义如下,所有的属性值都是字符串: ID资产的唯一标识符 COLOR:资产的颜色 SIZE:资产的尺寸,单位:MM OWNER:持有人 本项目提供一个基于Web的用户界面,以便用户操作区块链上的数据...资产区块链上以键/值对的形式保存。我们使用资产ID作为键,所有的资产属性构成一个JSON对象,其对应的字符串作为资产的值。...弹出的窗口中输入所有的资产属性后,点击CREATE按钮,然后等待新资产链上创建成功。 资产交易 web界面可以通过拖拽方式将一个大理石资产的所有权从一个用户转移给另一个用户。...删除资产 web界面也可以将资产拖拽到垃圾桶,然后等待资产从链上消失: ? 资产查询 可以web页面资产持有人或资产公司名称进行查询。

    1.3K30

    Hyperledger项目简介

    Linux基金运行的项目使用开源管理最佳实践,包括许可和贡献协议选择,以符合Linux的理想。Hyperledger项目就是这样的一个项目。...目前,数字资产的Blythe Masters是董事会主席,IBM的Chris Ferris是技术指导委员会主席。...通常当有人说“我们尝试使用Hyperledger”时,他们的意思是“我们试图使用Fabric”,但有时它们是指 Hyperledger项目中孵化的任何DLT。最好检查一下!...也就是说,其中一个分类账上的资产或智能合约不能立即与另一个账户交互或直接工作。最基本的技术层面推动账务互操作是Hyperledger的主要目标和价值之一。...Tim Swanson写作的时候介绍了它,维基百科说“第一件提案是结合数字资产控股、Blockstream的libconsensus和IBM的OpenBlockchain以前工作的代码库。

    2.1K60

    我从我的第一本区块链书中学到了什么

    区块链的真正核心,没有所有那些花哨的,荒谬的流行语,区块链实际上只包含很少一些东西。 即时性。使用区块链的最大优势之一是能看到实时更新。试想一下(你)一个需要对文档进行更改的组项目中进行工作。...微信图片_20180318091638.jpg 2018年的区块链 所以,现在我们了解了区块链利益之后,让我们来谈谈它如何在当今的各个行业中使用。我们来谈谈金融。...想象一下区块链上的病史,每个病人都有完整的历史记录,供医生用于精确的药物推荐。...为什么我会使用Hyperledger? 回答这个问题很简单。以下5点足够。 这是 Linux Foundation History中发展最快的项目。...通过Hyperledger ComposerJAVASCRIPT。是的,你不必像以太坊平台那样学习一门新的编程语言。

    86040
    领券