type="file" の入力要素があります。2 つの異なる API を使用しています。1 つ目では、img タグでファイルのプレビューを表示できます (画像のみがアップロードされます)。2 つ目は、img を回転させ、新しいイメージのコンテンツの dataUrl を取得できるようにします。
入力要素を含むフォームを送信すると、サーバーは、2 番目の API によってローテーションされたファイルではなく、ユーザーによって最初にアップロードされたファイルを受け取ります。意味あり。入力要素が指すファイルを変更する方法が必要です。
私の理解では、入力要素は FileList オブジェクトを指しています。input 要素では複数のアップロードが許可されていないため、その FileList オブジェクトの長さは 1 です。FileList オブジェクトを使用して、アップロードされたファイルに関するメタデータのみを含む単一の File オブジェクトにアクセスできます。実際にFileReader APIを使ってアップロードしたファイルの中身を読めるのですが、そこが問題…中身しか読めません。どうすればそれらを置き換えることができますか? または、新しい FileList オブジェクトを指す新しい FileList オブジェクトを作成し、何らかの方法で入力要素を新しい FileList にポイントするソリューションですか?
ありがとう、
ニック