コントラクトプラットフォームは、ブロック、トランザクション、アカウント、およびコントラクトをクエリするための複数のクエリ操作を提供します。
ブロックヘッダーのクエリ
QueryBlockHeader 操作を呼び出して、指定されたブロックヘッダーをクエリできます。 ブロックの高さ number またはブロックハッシュ hash を使用して、ターゲットブロックヘッダーをクエリできます。
リクエストパラメーター
これらの 2 つのうち、いずれかのパラメーターを使用する必要があります。
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| block_number | false | number | ターゲットブロックの高さの値。 |
| hash | false | string | ターゲットブロックのハッシュ。 「0x」で始まる 16 進数の文字列です。 |
例 1
ブロックの高さを使用してブロックをクエリします。
chain.ctr.QueryBlockHeader({
block_number: 30, // ビジネス要件に基づいてブロック高さの値を指定します。
}, (err, data) => {
console.log(data)
})
例 2
ブロックハッシュを使用してブロックをクエリします。
chain.ctr.QueryBlockHeader({
hash: '0xe6eebd5b7a6eff8f0af9ac151160e59cc7ec98429822400fc78906c3895bc1aa', // ビジネス要件に基づいてブロックハッシュを指定します。
}, (err, data) => {
console.log(data)
})
ブロックのクエリ
QueryLastBlock
この操作を呼び出して、最後のブロックをクエリできます。 この操作では、リクエストパラメーターは必要ありません。
例
chain.ctr.QueryLastBlock({}, (err, data) => {
console.log(data)
})
QueryBlock
この操作を呼び出して、指定されたブロックヘッダーをクエリできます。 ブロックの高さ number またはブロックハッシュ hash を使用して、ターゲットブロックヘッダーをクエリできます。
リクエストパラメーター
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| block_number | false | number | ターゲットブロックの高さの値。 |
| hash | false | string | ターゲットブロックのハッシュ。 「0x」で始まる 16 進数の文字列です。 |
例 1
ブロックの高さを使用してブロックをクエリします。
chain.ctr.QueryBlock({
block_number: 30, // ビジネス要件に基づいてブロック高さの値を指定します。
}, (err, data) => {
console.log(data)
})
例 2
ブロックハッシュを使用してブロックをクエリします。
chain.ctr.QueryBlock({
hash: '0xe6eebd5b7a6eff8f0af9ac151160e59cc7ec98429822400fc78906c3895bc1aa', // ビジネス要件に基づいてブロックハッシュを指定します
}, (err, data) => {
console.log(data)
})
トランザクションのクエリ
QueryTransaction 操作を呼び出して、トランザクションハッシュを使用してトランザクションをクエリできます。
リクエストパラメーター
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| hash | true | string | ターゲットトランザクションのハッシュ。 「0x」で始まる 16 進数の文字列です。 |
例
chain.ctr.QueryTransaction({
hash: '0xf66621372a13c813fe978c060e11a93c28b75f90d2200b9fa700f21433a96a77' // ビジネス要件に基づいて値を指定します
}, (err, data) => {
console.log('QueryTransaction:', data)
})
レシートのクエリ
QueryTransactionReceipt 操作を呼び出して、トランザクションハッシュを使用してトランザクションレシートをクエリできます。
リクエストパラメーター
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| hash | true | string | ターゲットトランザクションのハッシュ値。 「0x」で始まる 16 進数の文字列です。 |
例
chain.ctr.QueryTransactionReceipt({
hash: '0xf66621372a13c813fe978c060e11a93c28b75f90d2200b9fa700f21433a96a77' // ビジネス要件に基づいて値を指定します
}, (err, data) => {
console.log('QueryTransactionReceipt:', data)
})
アカウントのクエリ
QueryAccount 操作を呼び出して、指定されたアカウントをクエリできます。 アカウントの name が必要です。 name のハッシュ値は、ターゲットアカウントの identity です。「0x」で始まる 16 進数の文字列をターゲットアカウントの ID として直接提供することもできます。
リクエストパラメーター
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| from | true | string | ターゲットアカウントの名前(「0x」で始まらない)または「0x」で始まる 16 進数の文字列で表されるターゲットアカウントの ID。 システムはアカウント name を計算し、アカウント name のハッシュはアカウントの ID です。 |
例 1
アカウント name を使用します。
chain.ctr.QueryAccount({
from: 'Tester001'
}, (err, data) => {
console.log('QueryAccount:', data)
})
例 2
ターゲットアカウントの ID を使用します。 ID は 16 進数の文字列で表されます。
chain.ctr.QueryAccount({
from: '0xc60a9d48105950a0cca07a4c6320b98c303ad42d694a634529e8e1a0a16fcdb5'
}, (err, data) => {
console.log('QueryAccount:', data)
})
コントラクトアカウントのクエリ
QueryContract 操作を呼び出して、指定されたコントラクトアカウントをクエリできます。 ターゲットコントラクトの name が必要です。 name のハッシュ値は、ターゲットコントラクトの identity です。「0x」で始まる 16 進数の文字列をターゲットコントラクトの ID として直接提供することもできます。
リクエストパラメーター
以下のパラメーターはカプセル化され、オブジェクトとして渡されます。
| 名前 | 必須 | タイプ | 説明 |
|---|---|---|---|
| from | true | string | ターゲットコントラクトの名前(「0x」で始まらない)または「0x」で始まる 16 進数の文字列で表されるターゲットコントラクトの ID。 アカウント name が使用される場合、アカウント name のハッシュ値はコントラクトの ID です。 |
例
contractName = 'contract'+Date.now()
let myContract = chain.ctr.contract(contractName, abi)
myContract.new(bytecode, {
from: 'Tester001'
}, (err, contract, data) => {
console.log('contract deploy result:', data)
// デプロイされたコントラクトをクエリします
chain.ctr.QueryContract({
from: contractName
}, (err, data) => {
console.log('QueryContract:', data)
})
})