windows phone 上的 Cordova 上传图片错误
Cordova upload image error on windows phone
在我的应用程序中,我试图将从图库中选择的图像或从相机拍摄的图像上传到服务器。我正在使用 Camera 插件获取图像并使用 FileTransfer 插件上传我的图像。
自从我将我的 Cordova 版本更新到 6.0.0,从我的 windows phone 上传图像时出现错误,但它在 Android 4 上仍然可以正常工作。
这是我的代码:
function capturePhoto() {
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: pictureSource.CAMERA,
correctOrientation: true
});
}
function getPhoto(source) {
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: pictureSource.PHOTOLIBRARY
});
}
function onPhotoURISuccess(imageURI) {
console.log(imageURI);
var options = new FileUploadOptions();
options.fileKey = "myfile";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/') + 1);
options.mimeType = "image/jpeg";
options.httpMethod = "POST";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI(domainName + "/app_action/tools/upload/default.ashx?lang=fa&maximagesize=1024&minimagewidth=150&minimageheight=150&maximagewidth=700&action=addusermedia"), win, fail, options);
}
function win(r) {
console.log(r.response);
}
function fail(error) {
console.log(error.code);
console.log(error.source);
console.log(error.target);
}
我不断收到错误代码 1
当我记录 imageURI 时,我得到 blob:173FAAE9-680D-4FB6-A839-07230A277F4D
我也尝试获取 NATIVE_URI ,它将我的 imageURI 作为 ms-appdata:///local/wp_ss_20160514_0001.png
并将 "appdata:" 替换为空字符串
任何建议或答案都将是很好的
提前致谢
我终于通过将图像作为 Base64 字符串并将其发布到服务器来解决了这个问题。没有别的适合我,不过我仍在寻找建议!
在我的应用程序中,我试图将从图库中选择的图像或从相机拍摄的图像上传到服务器。我正在使用 Camera 插件获取图像并使用 FileTransfer 插件上传我的图像。 自从我将我的 Cordova 版本更新到 6.0.0,从我的 windows phone 上传图像时出现错误,但它在 Android 4 上仍然可以正常工作。 这是我的代码:
function capturePhoto() {
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: pictureSource.CAMERA,
correctOrientation: true
});
}
function getPhoto(source) {
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
quality: 50,
destinationType: destinationType.FILE_URI,
sourceType: pictureSource.PHOTOLIBRARY
});
}
function onPhotoURISuccess(imageURI) {
console.log(imageURI);
var options = new FileUploadOptions();
options.fileKey = "myfile";
options.fileName = imageURI.substr(imageURI.lastIndexOf('/') + 1);
options.mimeType = "image/jpeg";
options.httpMethod = "POST";
options.chunkedMode = false;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI(domainName + "/app_action/tools/upload/default.ashx?lang=fa&maximagesize=1024&minimagewidth=150&minimageheight=150&maximagewidth=700&action=addusermedia"), win, fail, options);
}
function win(r) {
console.log(r.response);
}
function fail(error) {
console.log(error.code);
console.log(error.source);
console.log(error.target);
}
我不断收到错误代码 1
当我记录 imageURI 时,我得到 blob:173FAAE9-680D-4FB6-A839-07230A277F4D 我也尝试获取 NATIVE_URI ,它将我的 imageURI 作为 ms-appdata:///local/wp_ss_20160514_0001.png 并将 "appdata:" 替换为空字符串
任何建议或答案都将是很好的
提前致谢
我终于通过将图像作为 Base64 字符串并将其发布到服务器来解决了这个问题。没有别的适合我,不过我仍在寻找建议!