Get Started
MetaID-TS-SDK 源代码已发布在 Github 上,相关 API 和示例代码请以 Github 最新页面为准
Introduction
MetaID SDK提供了一套规范标准和方法工具,用来生成和处理遵循MetaID协议的底层区块链数据(这里具体指符合UTXO标准的链, 目前支持BTC链) 。
MetaID SDK的设计目标是提供一个相对统一且高效的方法,大大简化了web3服务的整合,免去了开发者需与多种协议打交道以及数据上链时需自行构建复杂UTXO交易的需求,节省时间且减小了面临兼容性问题的风险。
基于MetaID SDK的简洁性,兼容性,可扩展性,高效性, 传统应用开发者可以快速开发并部署一个运行在UTXO链上的Dapp应用。
Core Concepts
MetaID SDK有两个核心概念:连接器(connector)和实体(entity)。
连接器用于身份信息的认证和管理,作为用户在区块链上发布数据的基础。
"实体"是在应用层中使用的术语。它用于管理某种特定数据类型的资源。从编程的角度来看,当你创建一个新的实体实例时,你可以访问其属性,并利用它所提供的一系列可执行链上数据存储和修改的方法。你可以将每一类Entity理解为分别对应于MetaID Specification中的PATH部分。
PIN索引规则
通用
识别Flag
metaid
大小写规则
大小写不敏感,索引器可以全部转为小写保存。
Operation
init 类型 PIN 所在的交易的
txid
为一个metaid
的roottxid
。init、create 遵循先到先得原则。
同一区块内 init、create 不区分先后顺序,索引器应先处理 init 类型 PIN,再处理其他类型 PIN。
先处理 init 是为了得到
roottxid/metaid
。
Path
对于相同的
path
,所有 init 和 create 的 PIN 是看最旧的,只有 modify/revoke 才是看最新的。modify/revoke 必须对已入块的 PIN 操作,即 modify/revoke 只对已经入块的 PIN 有效,即使同区块也是无效的。
非 init-PIN 的
path
一定是在以下path
内,一个metaid
默认存在这五个一级path
:/info
/file
/protocols
/nft
/ft
Path 规则
以
/file
、/protocols
、/nft
、/ft
开始的path
应该是全路径的,如:/protocols/simplebuzz/file/my-pfp.jpg
。
Installation
Method 1: 使用 yarn 或 npm
Method 2: 以 src 方式引入到你的原生 JS 项目中
该方法会把 npm 版本的包转换成浏览器能运行的包,无需打包工具(如 webpack)。
初始化一个本地项目
安装 SDK:
写一个
main.js
文件,只需要两行代码:
使用 npm 全局安装 browserify:
安装完成以后,执行命令:
命令运行完成以后,会生成一个 bundle.js
文件。现在我们就可以把这个文件和 HTML 代码放在一起,通过 <script>
标签导入了:
Last updated