1

ajax スタイルのファイル アップロードを実装しようとしています。アップロードの進行状況を報告するために何をしなければならないかを考えていました。これをasp.net Webページに実装しようとしています。

ajax スタイルのファイルを Web ページにアップロードするメカニズムを理解しています。プログレスバーを表示する方法についてよくグーグルで調べていますが、適切な説明がありません。しかし、これをサーバー側から何らかの方法で管理する必要があることを理解するようになりました。(ファイルのアップロードの進行状況を参照)

任意のアイデア/コードをいただければ幸いです。事前にサンクス。

4

1 に答える 1

1

Ajax、Flash、Silverlight などを使用したアップロード コントロールが多数あるため、なぜ独自のものを作成する必要があるのか​​わかりません。それにもかかわらず、コンセプトは進行状況を照会して現在の状態を返すことです。 この男は同じプロセスを経て、 jQuery を使用してコンポーネントを構築する方法を示しています

進行状況を表示するには、クライアントがサーバーからフィードバックを取得する必要があります。これは、進行状況を取得するためにサーバーに繰り返しクエリを実行することを意味します。その情報を使用して、クライアントに進行状況を表示します。

サーバーでは、受信ファイルのアップロードを受け入れるだけでなく、集計の進行状況で応答する必要があります。リクエストで Content-Length ヘッダーを渡せば簡単です。問題は、その情報を持っていることに頼ることができないということです。これに対処するための戦略がありますが、受信ビットを読み取る必要があるため、アップロードされたファイルを受け入れるコードが必要です。

この時点で、プログレス バーの範囲をはるかに超えたその他の注意事項があります。たとえば、Web サーバーのインプロセスでの大きなファイルのアップロードの処理などです (アウト プロセスは、サーバーへの悪影響がはるかに少なくなります。 )

関連する複雑さのため、独自のコンポーネントを作成するのではなく、既存のコンポーネントを見つけることをお勧めします。

于 2009-09-25T17:16:04.893 に答える