• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ファイルアップロード前にファイルサイズを取得するには?)

ファイルアップロード前にファイルサイズを取得するには?

このQ&Aのポイント
  • ファイルアップロード前にファイルサイズを取得する方法について教えてください。
  • 要約:Ajaxを使ったプログレスバー付きのUploaderにおいて、ファイルアップロード前にファイルサイズを取得する方法を教えてください。
  • ファイルアップロード前にファイルサイズを取得する方法を教えてください。Ajaxを使ったプログレスバー付きのUploaderについて質問です。

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

ざっと見ただけですが、 ブラウザーがPOST要求を出す時のリクエストヘッダーにある Content長(バイト)をサーバ側が始めににトータルサイズとしてセットし 読み取り済みサイズ、時間等と一緒に計算してAJAXで返し、JAVASCRIPTで プログレスバー表示しているような気がします。 サーバー側に設置するubr_upload.pl (Perlプログラム)の中に $ENV{'CONTENT_LENGTH'}を取得している部分を見つけました。 (私の読み間違いかも?)

mokpok
質問者

お礼

回答ありがとうございます。 何だか見えてきました。 ファイルのアップロードは ubr_upload.pl で行い、 その中でまず先に $ENV{'CONTENT_LENGTH'} の値を別途ファイルに書き出し、 その後アップロード処理に移行。 プログレスバーの処理は、Ajaxで ubr_get_progress.php を呼び出し、 そこで先ほど書き出したファイルの中身を読み取ることで、 アップロード中でも総ファイルサイズの取得を実現。 こういう流れでしょうか。 てっきりPerlCGIやPHPなどのサーバサイドスクリプトが実行されるのは、 ファイル本体を含んだ全てのリクエストデータが送信され切ってからだと思っていましたが、 どうもその認識は間違っていたのでしょうか。

すると、全ての回答が全文表示されます。

関連するQ&A