すべてのプロダクト
Search
ドキュメントセンター

Blockchain as a Service:クエリインターフェース

最終更新日:Jan 19, 2025

コントラクトプラットフォームは、ブロック、トランザクション、アカウント、およびコントラクトをクエリするための複数のクエリ操作を提供します。

ブロックヘッダーのクエリ

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 進数の文字列です。
これらの 2 つのうち、いずれかのパラメーターを使用する必要があります。

例 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)
  })
})