2017-01-05 7 views
1

ノードベースのgraphqlプロジェクトで、サーバーにbase64形式のイメージを送信しようとしています。エラー:ノードのグラフサービスで大きすぎるリクエストエンティティ

私はボディパーサーモジュールを使用しており、以下のように構成しています。

app.use(bodyparser.text({type: 'application/graphql'})); 

app.use(bodyparser.json({limit: '50mb'})); 
app.use(bodyparser.urlencoded({limit: '50mb', extended: true})); 

私が直接ノードのサービスでbase64で画像を送信することが可能だが、それはサービスをgraphqlに来るとき、それはように、エラーを投げている:

Error: request entity too large

+0

タイプを設定してみてください。 var @ urlencodedParser = bodyParser.urlencoded({拡張:1024 * 1024 * 20、タイプ: 'application/x-www-form-urlencoding'}) – digit

+0

あなたの応答@digitのThanq、私はそれを試しましたが、私のために働いた。 –

答えて

0

あなたはgraphql-express NPMパッケージを使用していますか?

ので、問題がありそうなこの行である場合: https://github.com/graphql/express-graphql/blob/master/src/parseBody.js#L112

あなたは、この要求のために100キロバイトの最大サイズを設定し、見ることができるように。

同じ問題が発生し、リポジトリをフォークして修正し、手動で最大リクエストサイズを増やしました。

これは、パッケージに貢献する良い機会かもしれません! 制限が設定可能であればいいでしょう。

+0

こんにちは、あなたの応答のためのthanq、 "graphql"モジュールではなく、 "graphql-express"モジュールを使用しています。 –

+0

ああ大丈夫です。多くの場合、両方のパッケージを同時に使用します。 'graphql'パッケージはスキーマ、型、リゾルバなどを扱い、' express-graphql'は 'graphql'パッケージから作成されたスキーマをとり、それをエクスプレスウェブサーバを介してインターネットに公開します。 – mparis

関連する問題