我正在尝试使用cordova文件传输插件将图像(从相机中取出或从图库中选择)提交到我的上传服务器。 相机插件工作正常,我可以看到图像 - 用相机拍摄或从画廊中选择 - 显示在屏幕上(使用< img />标签)。
尝试实现FileTransfer.Upload时,the docs表示upload方法有一些参数,包括成功/错误回调函数。 这是我的代码部分:
function uploadPhoto() {
var imageURI = document.getElementById('ImageSource').getAttribute("src");
if (!imageURI) {
alert('Please select an image first.');
return;
}
console.log("imageURI = " + imageURI);
var url=encodeURI("http://my.server.path/upload.php");
var options = new FileUploadOptions();
options.fileKey = "file";
options.mimeType = "multipart/form-data";
options.chunkedMode = false;
console.log("Starting Transfer...");
var ft = new FileTransfer();
ft.upload(imageURI, url,
function (r) {
alert('Finished upload!');
}, function (error) {
console.log(error);
alert('Error uploading image with code: ' + error.code)
},
options
);
console.log("Finishing Transfer...");
}
在Android模拟器上运行应用程序,我没有得到警报。我不知道这是成功还是失败。但奇怪的是:图像文件上传到我的服务器,我可以在日志中看到这两行:
D/CordovaLog( 2487): file:///android_asset/www/js/app.js: Line 123 : imageURI = content://media/external/images/media/24
D/CordovaLog( 2487): file:///android_asset/www/js/app.js: Line 147 : Starting Transfer...
D/CordovaLog( 2487): file:///android_asset/www/js/app.js: Line 163 : Finishing Transfer...
有人可以指出我,我应该在哪里看?因为我无法处理响应。我需要获取服务器响应,并将处理后的图像显示回屏幕。