0

特定の問題が 1 つあります。

複数のPNGを返すnodejs Expressアプリケーションに送信された単一のリクエストがあります。結果はブラウザの画像に直接表示されます。

image.src = http://www.....

PNGはサーバー側で作成されますが、1回の応答で送り返し、クライアント側でブラウザに画像として表示することはできません。

PNG コンテンツをストリームにパイプして送り返しました。すべてのファイルが送り返されたときに、最後にストリームを閉じました。間に res.end() を呼び出しませんでした。

何が起こるかというと、非常に大きな PNG ファイルを受け取ります (したがって、要求したすべての画像のデータが含まれていることがわかっています) が、ブラウザの画像には最初の PNG しか表示されず、応答クライアントを分割する方法がわかりません。すべての私の画像を表示する側。

PNGをPCに直接ダウンロードしても(手動でリクエストを呼び出して)、PNGを表示することさえできません-返されるPNGは非常に大きいですが、たとえばgwenviewで開いたときに最初のPNGしか表示されません。

すべてのブラウザーが解凍をサポートしているわけではないため、png を zip ファイルで送信してクライアント側で抽出するオプションはありません。(私はこれを学ぶのに苦労しました)私は本当にこの問題を解決する方法を知りません. まだわからない特定のヘッダー タイプを設定する必要がありますか? PNG の間に区切り文字を送信する必要がありますか? 返される PNG クライアント側を分割するにはどうすればよいですか?

いくつかの助けをいただければ幸いです。

ありがとうございました!

4

2 に答える 2