質問: クライアントサイドから画像アップロードする際の手段について質問です。 JSで`FormData`を用いたAjaxアップロードについては散見しますが、通常のHTTPでPOST送信する方法が見つからず、その手段について知りたいです。 前提条件は、 * クライアントサイドで画像ファイル選択 * クロップ処理 * dataURIの形式で取得(またはBlob変換) この際のdataURI(BloB)データをフォームの``に落としこむなどで、Ajaxではなく通常POSTでアップロード可能でしょうか? 以下の制限については調べてきた中で把握しています。 * inputタグのfileはセキュリテイ上JSから選択ファイルを指定できない バックエンドはRailsでcarrierwaveを利用しています。 dataURIを文字列形式で送り、処理する手法はいくつか見つかりました。 * timsly/carrierwave-data-uri * Uploading data URIs in Carrierwave しかし、一般的な手法があるのであれば知りたい次第です。 皆様よろしくお願いいたします。
回答: 自己回答です。FormデータとしてPostする場合、やはりAjax以外はやり方がなさそうなので、 base64形式のデータで画像データを送り、バックエンド側での処理を変更しました。 上記gemでは、formからダイレクトに送るにはコード記述が多くなりそうなのでPRを送ったのですが、OKもらえなかったので少し変更したforkのコードで対応しました。