在Hyperledger Composer

时间:2017-11-14 13:23:56

标签: hyperledger-fabric hyperledger hyperledger-composer

我目前正在开发一个POC,需要在Hyperledger Composer中上传pdf附件。从UI(角度)上传的PDF转换为base64字符串,同样通过composer rest server api创建/更新资产。但是当文件大小超过40 KB时,跟随错误会显示为“实体太大”。此错误仅由composer rest server抛出。结构网络没有错误。

请求POST / api / UpdateContractDetails的未处理错误:错误:请求实体太大 getStaw(/home/ttandale/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/raw-body/index.js:196:17)getRawBody(/ home / ttandale / .nvm / versions / node / v6.11.2 / lib / node_modules / composer-rest-server / node_modules / raw-body / index.js:106:12)at read(/home/ttandale/.nvm/versions/node/ v6.11.2 / lib / node_modules / composer-rest-server / node_modules / body-parser / lib / read.js:76:3)at jsonParser(/home/ttandale/.nvm/versions/node/v6.11.2/lib /node_modules/composer-rest-server/node_modules/body-parser/lib/types/json.js:127:5)在Layer.handle [as handle_request](/home/ttandale/.nvm/versions/node/v6。 11.2 / lib / node_modules / composer-rest-server / node_modules / express / lib / router / layer.js:95:5)trim_prefix(/home/ttandale/.nvm/versions/node/v6.11.2/lib/node_modules /composer-rest-server/node_modules/express/lib/router/index.js:317:13)/home/ttandale/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/在Function.process中的node_modules / express / lib / router / index.js:284:7 _params(/home/ttandale/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/node_modules/express/lib/router/index.js:335:12)下一步(/ home / ttandale / .nvm / versions / node / v6.11.2 / lib / node_modules / composer-rest-server / node_modules / express / lib / router / index.js:275:10)athome/ttandale/.nvm/versions/ node / v6.11.2 / lib / node_modules / composer-rest-server / node_modules / loopback / server / middleware / token.js:130:7 athome/ttandale/.nvm/versions/node/v6.11.2/lib/ node_modules / composer-rest-server / node_modules / loopback / common / models / access-token.js:108:15 athome/ttandale/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-服务器/ node_modules / loopback / common / models / access-token.js:171:11在_combinedTickCallback(internal / process / next_tick.js:73:7)at process._tickCallback(internal / process / next_tick.js:104:9 )

这有什么尺寸限制吗???在0.6版本的结构中,我们上传的文件大小超过1 MB。我们有一个文件大小最大为2 MB的场景。 请帮助和指导。

2 个答案:

答案 0 :(得分:1)

在处理base64编码的图像时,我遇到了同样的问题。问题与Hyperledger Fabric无关。基本上在默认配置下,其余客户端将请求大小限制为100kb。您可以通过编辑path_to_rest_server/server

中的server.js文件来增加此限制。

在我的情况下是$HOME/.nvm/versions/node/v8.11.1/lib/node_modules/composer-rest-server/server/

请参阅this answer

答案 1 :(得分:0)

在此处查看此Stack Overflow的响应 - > is there any size limit for pdf in hyperledger fabric?

错误Error: request entity too large at readStream表示这在技术上是一个Node问题。在另一篇文章中使用建议的解决方案(实际上至少有两个)。欢呼声

PS。您还可以在此S / O上阅读有关限制更改(向下滚动)的限制(和调整)Error: request entity too large的更多信息。仅供参考。