モバイル デバイスのカメラとフォト アルバムにアクセスして、選択した画像を取得しようとしています。以下のコードでそれを行いました。私の問題は、画像データを生成し、それを別のページに転送する必要があることですが、生成された文字列のサイズが原因で、URL パラメーターを使用できません。エラーが表示されます:[404] Request-URI Too long
。どうすれば他のページに情報を渡すことができますか?
コードは次のとおりです。http://jsfiddle.net/8u426/
JS:
<script>
oFReader = new FileReader();
oFReader.onload = function (oFREvent) {
document.getElementById("fotoImg").src = oFREvent.target.result;
document.getElementById("fotoImg").style.visibility = "visible";
var screenHeight = screen.availHeight;
screenHeight = screenHeight - 220;
document.getElementById("fotoImg").style.height = screenHeight;
document.getElementById("stringImg").innerText = "Data Image: " + oFREvent.target.result;
};
$(function() {
$("input:file").change(function (){
var input = document.querySelector('input[type=file]');
var oFile = input.files[0];
oFReader.readAsDataURL(oFile);
});
});
</script>
アップデート:
問題は、データ イメージ文字列を URL のパラメーターとして ("?" を使用して) 渡して新しいページを開こうとした場合です。文字列が長すぎるため、新しいページには前述の 404 エラーが表示されます。