使用BlueImp JQuery Fileupload在手机上上传相机拍摄的照片
我正试图允许从Android设备上传相机照片(我希望它也支持iPhone,但目前我主要关心的是让它与Android一起工作)。我正在使用BlueImp的JQuery文件上传插件,它在桌面上运行良好。在手机上,当我用相机拍照时,它会显示上传过程(我有一个进度条),但“完成”功能实际上从未启动 我应该注意的是,我可以选择一张已经保存在移动设备上的照片并上传,这很好,只有当我从弹出菜单中选择“相机”选项时,它才会失败 这是在使用Chrome的Android 4.4.4上实现的 Javascript:使用BlueImp JQuery Fileupload在手机上上传相机拍摄的照片,jquery,mobile,blueimp,Jquery,Mobile,Blueimp,我正试图允许从Android设备上传相机照片(我希望它也支持iPhone,但目前我主要关心的是让它与Android一起工作)。我正在使用BlueImp的JQuery文件上传插件,它在桌面上运行良好。在手机上,当我用相机拍照时,它会显示上传过程(我有一个进度条),但“完成”功能实际上从未启动 我应该注意的是,我可以选择一张已经保存在移动设备上的照片并上传,这很好,只有当我从弹出菜单中选择“相机”选项时,它才会失败 这是在使用Chrome的Android 4.4.4上实现的 Javascript:
$photoUpload.fileupload({
url: '/image/uploadimage/',
dataType: 'json',
acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i,
done: function (e, data) {
var $formImageUpload = $(this).parents('.form');
$formImageUpload.find('.imageUrl').val(data.result.filePath).attr('type', 'hidden');
$formImageUpload.find('.photoPreview').attr('src', data.result.filePath).show();
$formImageUpload.find('.buttonResetImageForm').show();
},
progressall: function (e, data) {
var $formImageUpload = $(this).parents('.form');
var progress = parseInt(data.loaded / data.total * 100, 10);
$formImageUpload.find('.progress .progress-bar').css(
'width',
progress + '%'
);
}
})
结果证明它和蓝精灵完全无关。这是服务器端的大小限制。一旦我更改了NGINX和PHP-FPM配置以允许更大的文件,它就工作得很好。看看Chrome文件系统API,您可以在设备上保存和检索文件--