メタデータ(アカウント)
10.アカウントメタデータトランザクションの実行
メタデータ: アカウント, モザイク, ネームスペース にkey,valueにてカスタムデータを添付して関連付けることができます。
本サンプルではworkaddressアカウントへメタデータを割り当てます。
割り当てるメタデータはハードコーディングされています。
const key = "AccountMetaTest";
const value = "AccountTest";
実行
node 10_metadata_account.js
出力例:
network 96
GenerationHash 7E77022504E4EAEFC49F4C1F33A30BEE6E40417BB63597CA400EED72ECBFF6A4
scopedMetadataKey D509356FC9B5BACF //HEX化されたメタデータキーが表示されます
txsize 175
payload 528
------------------- signedTransaction ------------------------
SignedTransaction {
payload: '<payloadが表示されます>',
hash: 'AD0D1C42E9A5FD71495ED6C82FBD29BC1FA5810678D511CFE8E660957F600A8A',
signerPublicKey: 'B1E269453CD3FEE641088B752A394A4BA53AD2E01B583533558A2CBD51C02E8F',
type: 16705,
networkType: 96
}
------------------- sendTransaction ------------------------
------------------- Success --------------------------------
Success: Transaction AggregateTransaction {
type: 16705,
networkType: 96,
version: 2,
deadline: Deadline { adjustedValue: 127137273415 },
maxFee: UInt64 { lower: 0, higher: 0 },
signature: '<signatureが表示されます>',
signer: PublicAccount {
publicKey: '<送信元workaddressのpublicKeyが表示されます>',
address: Address {
address: '<送信元workaddressのアドレスが表示されます>',
networkType: 96
}
},
transactionInfo: TransactionInfo {
height: UInt64 { lower: 440090, higher: 0 },
index: undefined,
id: undefined,
timestamp: UInt64 { lower: 0, higher: 0 },
feeMultiplier: 0,
hash: 'AD0D1C42E9A5FD71495ED6C82FBD29BC1FA5810678D511CFE8E660957F600A8A',
merkleComponentHash: 'AD0D1C42E9A5FD71495ED6C82FBD29BC1FA5810678D511CFE8E660957F600A8A'
},
payloadSize: undefined,
innerTransactions: [
AccountMetadataTransaction {
type: 16708,
networkType: 96,
version: 1,
deadline: [Deadline],
maxFee: [UInt64],
signature: '<signatureが表示されます>',
signer: [PublicAccount],
transactionInfo: undefined,
payloadSize: undefined,
targetAddress: [Address],
scopedMetadataKey: [UInt64],
valueSizeDelta: 11,
value: [Uint8Array]
}
],
cosignatures: []
}
メタデータを付与したアカウント情報の取得
上記でメタデータを付与実施した、workaddressのアカウント情報を確認します。
- workaddress
実行
node account_info.js workaddress
出力例:
AccountInfo {
url: 'https://xxxxxxxx.mijin.io',
network: '96',
account: 'workaddress',
address: '<workaddressのアドレスが表示されます>',
mosaics: [
{
mosaic: '1D361778B3471970',
amount: '94',
namespaceAlias: 'techbureau'
}
],
linkedKeys: { linked: 'None', node: 'None', vrf: 'None', voting: 'None' },
meta: [
{
id: '64940C4D9AAC44BA5541D8A8',
scopedMetadataKey: 'D509356FC9B5BACF', //HEX化されたメタデータキーが表示されます
sourceAddress: '<workaddressのアドレスが表示されます>',
targetAddress: '<workaddressのアドレスが表示されます>',
metadataType: 0,
targetId: 'None',
metadataValue: 'AccountTest' //メタデータの値が表示されます
}
],
multisig: []
}
参考)ブロックチェーンエクスプローラーでworkaddressのアドレスを検索すると、以下の様に表示されます。
メタデータエントリ欄に値として表示されます。
ブロックチェーンエクスプローラーに関しては以下FAQを参照ください。