Android avdから画像をアップロードするために次のコードを使用しています。
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="text/plain";
var filename = imageURI.substr(imageURI.lastIndexOf('/')+1);
var upload_url="http://example.com";
alert(upload_url);
alert(filename);
var params = new Object();
params.value1 = "test";
params.value2 = "param";
options.params = params;
options.chunkedMode = false;
options=null;
var ft = new FileTransfer();
ft.upload(imageURI, upload_url, picUploadSuccess, picUploadFailed,options);
ただし、このコードは、ファイルに追加のヘッダー情報をほとんど追加しません。以下のように -- * Content-Disposition: form-data; 名前="値1";
test -- * Content-Disposition: フォームデータ; 名前="値2";
param -- * Content-Disposition: フォームデータ; 名前="ファイル"; ファイル名="1.jpg" コンテンツ タイプ: 画像/jpeg
そのため、ファイルがサーバーに保存されている場合、JPEG 画像として開くことはできません。options オブジェクトがこれらの追加のヘッダー情報を追加する責任があることがわかりました。nullを割り当てて、オプションオブジェクトなしで試しました。ただし、ファイルには追加情報がほとんどありません。
ファイル内に追加情報なしでファイルをアップロードする提案を楽しみにしています。