2012-03-01 17 views
0

Javascriptでクライアント側のイメージのサイズを変更しましたが、結果をファイル入力に戻すことはできません。ポストでクライアント側のサイズ変更されたイメージを送信

<input id="file" name="userfile" type="file" /> 

私はリサイズと非常に大規模なテキストデータに

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAYAAA... 

を取得する私は、ファイルの入力に戻って与える、または郵便で送る方法を知りません。

f.value = data; 

は動作しません。

テキストフィールドにデータを入れようとしましたが、約130kより大きいテキストはサーバーで受け付けられませんが、サイズ変更されたイメージは通常これより大きくなります。私はその制限をどのように変更するか、または大きなデータを投稿する方法を見つけませんでした。

何か助けていただきありがとうございます。ありがとう。

+0

"ただし、約130kより大きいテキストはサーバーで受け付けられません"。大きな画像をサーバーにアップロードできますか?もしそうでなければ、このサーバにはオプションがありません。おそらく、それをseveralsの部分に送ります。 – kirilloid

+0

はい、私はたくさんの大きなファイルをアップロードすることができますが、私のデータ(データ:image/png; base64、IVBORw0 ...)ファイルとしてアップロードします。 –

答えて

1

テキストフィールドまたは非表示フィールドを使用して、POSTリクエストとしてフォームを送信することは正しい方法です。

フォームをGETとして送信すると、データはURLに格納され、データサイズが非常に制限されます。 130 KBの限界が右のように聞こえる。

送信POSTデータは、サーバーが受け入れる要求の大きさによってのみ制限されます。通常、これは130kbを超えるものです。たとえば、Windowsサーバーのデフォルトは4 MBです。

+0

私は投稿でそれをしますが、いくつかのサーバー設定(おそらくsuhosin?)ではテキストフィールドに130kを超えるデータを送信できません。最大ファイルサイズはそれ以上に設定されていますが、イメージbase64のデータをファイルに戻してアップロードすることはできません。 –

+0

@GeorgeGebauer:はい、Suhosinはリクエスト値を制限しているようです。これは便利かもしれません:http://www.webmastertalkforums.com/blogs/jordan/401-suhosin-request-post-get-character-length-limit-max_value_length.html – Guffa

+0

130kbはGETにはあまりにも多いです。制限は2-4kbで、通常は – kirilloid

関連する問題