我一直在阅读文档,试图弄清楚如何在QLDB中提交事务,为了做到这一点,CommitDigest需要a,文档将其描述为:
指定要提交的事务的提交摘要。对于每个活动事务,必须传递提交摘要。如果客户端上计算的摘要与QLDB计算的摘要不匹配,则QLDB会验证CommitDigest并拒绝提交,并显示错误。
因此,必须计算CommitDigest,但在此示例中,我不太确定其计算需要什么:
// ** Start Session **
const startSessionResult = await qldbSession.sendCommand({
StartSession: {
LedgerName: ledgerName
}
}).promise(),
sessionToken = startSessionResult.StartSession!.SessionToken!;
// ** Start Transaction **
const startTransactionResult = await qldbSession.sendCommand({
StartTransaction: {},
SessionToken: sessionToken
}).promise(),
transactionId = startTransactionResult.StartTransaction!.TransactionId!;
// ** Insert Document **
const executeStatementResult = await qldbSession.sendCommand({
ExecuteStatement: {
TransactionId: transactionId,
Statement: `INSERT INTO sometable { 'id': 'abc123', 'userId': '123abc' }`
},
SessionToken: sessionToken
}).promise(),
documentId = getDocumentIdFromExecuteStateResult(executeStatementResult)
// ** Get Ledger Digest
const getDigestResult …Run Code Online (Sandbox Code Playgroud)