send_data
ajax投稿リクエストのレスポンスとしてPNG画像を返すために使用しようとしています。成功のコールバックでブラウザにダウンロードをトリガーさせるにはどうすればよいですか?
詳細
を使用して大きな base64 イメージを生成しcanvas.toDataURL()
、それを Rails (v3.2.6) に投稿しています。Rails はそれをバイナリ PNG にデコードし、画像をクライアントに送り返します。
私も試しましsend_file
たが、同じ問題があります。
その他のオプション
画像クライアント側のダウンロード: (1) Safari は大きな base64 URLでクラッシュするため、これを行うことはできません。(2) Safari は、ダウンロードした画像のファイル名を指定する必要があるアンカー タグのダウンロード属性をまだサポートしていません。
$.get
の代わりにa を使用$.post
:canvas.toDataURL()
サーバーへのリクエストと共に送信する必要があるため、これは実行できません。GET
requests URI にはサイズ制限があります。