豚吐露@wiki

413が返ってきてPOSTできない

最終更新:

ohden

- view
管理者のみ編集可

413が返ってきてPOSTできない

事象

postしたら以下のresponseが帰って来て、処理されない。
statusCode: 413
message: request entity too large

原因

原因はNestJSのdefault設定。
NestJSは、defaultで"100kByte"のpayloadしか許容してない。
なので、POSTのpayloadの内容がでかすぎると、事象のトコに書いてるresponseが帰ってくる。

対策

入力を減らすか、入力bufferを大きくする。

入力sizeの許容量を変えるには以下のように"bodyParser"を変更する。

"src/main.ts"を開いて、"bootstrap"でlisten()する前に以下の設定を追加。
create()するときにジェネリクス"<NestExpressApplication>"を追加して、目的に合わせてlimitの値を変更する。
$ vi src/main.ts
  const app = await NestFactory.create<NestExpressApplication>(AppModule);
  app.useBodyParser('json', { limit: '10mb' }); //application/json利用時のlimit size.
  app.useBodyParser('urlencoded', { limit: '10mb', extended: true }); //URL encode形式のpost dataのlimit size.

とりあえず、上記は"10MByte"にした例。
ただ、fileのuploaderとか実装する場合とかでは、足りないかもしれんので適宜変更のこと。


更新日: 2023年10月11日 (水) 21時49分45秒

名前:
コメント:

すべてのコメントを見る
記事メニュー
ウィキ募集バナー