【发布时间】:2017-08-22 01:26:14
【问题描述】:
说明
使用节点,我发出一个典型的 API POST 请求,我有一个带有响应变量 err 的 .catch 块。出错时,响应正文会按原样返回(从 Hyperledger Composer REST 应用程序中可以看到)
{
"error": {
"statusCode": 500,
"name": "Error",
"message": "error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Payment needs to be of positive value)",
"stack": "Error: error trying invoke chaincode. Error: chaincode error (status: 500, message: Error: Payment needs to be of positive value)\n at _initializeChannel.then.then.then.then.catch (/home/ubuntu/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:839:34)"
}
}
我的问题
我只是想从上述响应中获取 message 属性并将其发送到 UI。但奇怪的是err.message 没有给我在message 中看到的值,而是返回整个响应正文(与err.stack 相同)。
所以基本上 -- err、err.message 和 err.stack 返回相同的输出
我如何最终只获取属性中的值,比如message?
PS:
err.statusCode 确实返回正确的值,即。 “500”。
err.name 返回“StatusCodeError”(不是我在响应中看到的“错误”)
【问题讨论】:
标签: node.js hyperledger hyperledger-fabric hyperledger-composer