「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板

(#2900) 今更ですが - NON (2019-10-05 21:25) /中 未処理
今更ですが後の方のために。

改造の方針は以下の通り。

cgi.nako を書き換え、読み込みサイズが一定サイズ以上であれば少しずつ「標準入力取得」して一時ファイルに書き出すor変数に代入する。元々のフォーム取得命令で別プログラムに転送すると壊れることがある(特にバイナリ)ので、書き出した一時ファイルあるいは変数を、別プログラムから直接読み書きするようにする。
↑改造で指定した一時ファイルor変数を呼び出し元のプログラムで使用する、すなわち通常のなでしこCGIの機能・命令を使わずに直接制御することになるので、専用の「cgi.nako」が出来上がる。したがって「汎用的なライブラリにするのは難しい」


なお、既存のcgi.nakoだと、バイナリファイルを読むと、小さいファイルであっても末尾にゴミ(マルチパートフォームのフッタ)が付くようです。
これはマルチパートフォームの中身を分割する処理で、フッタを認識できずデータの末尾までまとめて処理してしまうためで、結果としてバイナリを複数添付すると、1つ目のデータにすべて合成された状態で出てきます。
編集
📌 なでしこCGIで大ファイルを受信するとデ.. / NON (2015-11-10 22:26) (#2471) /中 未処理
└─ Perlでは問題なし / NON (2015-12-29 14:37) (#2519) /中 未処理
└─ IISでも再現 / こころ (2016-10-07 22:32) (#2678) /中 未処理
└─ Re: なでしこCGIで大ファイルを受信する.. / うぇいく (2016-10-19 21:23) (#2682) /中 未処理
└─ どう改造すればよいのでしょうか / NON (2016-12-01 19:09) (#2707) /中 未処理
└─ 今更ですが / NON (2019-10-05 21:25) (#2900) /中 未処理
└─ 追記2 / NON (2020-04-09 21:15) (#2915) /中 未処理

✏️ (#2900)へ返信する

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能