問題タブ [flysystem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Flysystem S3 リモート ファイルのダウンロードが常に破損する
私は最近、ローカルおよびリモート (具体的には S3) ファイルシステムを抽象化する目的で、既存のアプリケーションで Flysystem を使い始めました。LocalAdapter を正常に構成した私の開発環境では、すべてが正常に機能していました。ただし、S3 ファイルのダウンロードが機能しません。AWS マネジメント コンソールで S3 バケットを手動で参照することでファイルを正常にダウンロードできることを考えると、ファイルのアップロードは完全に機能していることを指摘したいと思います。そうは言っても、$filesystem
変数を初期化するコードはスキップします。
私のアプリケーションは PSR-7 アプローチを使用しています。つまり、以下のコードは、Psr\Http\Message\ServerRequestInterface
最初の引数として型のオブジェクトが渡さPsr\Http\Message\ResponseInterface
れ、2 番目の引数として型のオブジェクトが渡される関数内にあります。ローカル ファイル システムが正常に動作していることを考えると、問題はそこにはないと考えて間違いないと思います。
これはコードです:
$stream
変数と変数をダンプすると$filesize
、結果は期待どおりになります。リモート ファイルの内容が正常に印刷されます。ただし、ファイルのダウンロードは常に破損しており、ファイル サイズは常に 0 バイトです。
私は、Flysystem が舞台裏ですべてを処理し、クライアントに提供する前に、最初に一時フォルダーにファイルを手動でダウンロードする必要がないことを前提としています。
何が問題なのか手がかりはありますか?
更新 1
また、次のコードを試してみましたが、運がありませんでした。ただし、ローカルでは引き続き動作します。
と