REST 上的 Hyperledger 错误 500 API:ENDORSEMENT_POLICY_FAILURE

Hyperledger error 500 on REST API : ENDORSEMENT_POLICY_FAILURE

我按照本教程:(https://hyperledger.github.io/composer/latest/tutorials/deploy-to-fabric-multi-org) 部署了多组织网络。当我尝试 POST 来自我的 REST API 的事务时,出现以下错误:

"Error trying invoke business network. Error: Peer localhost:7051 has rejected transaction 'e12bc56bf4c0af54f7909a976da0c1342ec08a4872bff611eff392635b01cfb1' with code ENDORSEMENT_POLICY_FAILURE"

如果我尝试从命令行 POST 进行交易,我确实会遇到同样的错误。

我的背书政策如下:

{
"identities": [
    {
        "role": {
            "name": "member",
            "mspId": "Org1MSP"
        }
    },
    {
        "role": {
            "name": "member",
            "mspId": "Org2MSP"
        }
    }
],
"policy": {
    "2-of": [
        {
            "signed-by": 0
        },
        {
            "signed-by": 1
        }
    ]
 }
}

我知道这意味着两个组织必须同意每笔交易,但我不知道我应该如何让组织具体同意。有谁知道如何处理这个问题?

注意:如果我尝试从 REST 创建资产或参与者 API 它会起作用。

谢谢!

如果您可以使用 POST 请求成功创建资产,那么您正在执行名为 AddAsset系统事务 - 背书工作正常。

我认为在您的交易中,您有一个字段是时间戳或随机数或其他生成的字段,这些字段是在每个对等点上单独计算的,给出了不同的答案,因此背书失败。