gpt4 book ai didi

cordova - Phonegap FileTransfer 错误代码返回 null

转载 作者:行者123 更新时间:2023-12-04 23:46:26 27 4
gpt4 key购买 nike

我一直在 Phonegap 中实现上传图片功能。我的服务器端代码已经准备就绪。

我已经安装了 File 和 FileTransfer 插件,但是当我尝试将图片上传到我的服务器时,代码总是失败,并且总是会转到 fail() 函数。我无法确定错误是什么,因为 error.code、error.source、error.target 始终为 null。

为什么我在 error.code 上得到 null?我无法确定这里出了什么问题,所以我真的需要你的帮助。

这是我的代码:

           var pictureSource = navigator.camera.PictureSourceType;
var destinationType = navigator.camera.DestinationType;

function clearCache() {
navigator.camera.cleanup();
}

var retries = 0;
function onCapturePhoto(fileURI) {
var win = function (r) {
clearCache();
retries = 0;
alert('Done!');
console.log(r);
}

var fail = function (error) {
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
if (retries == 0) {
retries ++
setTimeout(function() {
onCapturePhoto(fileURI)
}, 1000)
} else {
retries = 0;
clearCache();
alert('Ups. Something wrong happened!');
}
}

var options = new FileUploadOptions();
options.fileKey = "profilepic";
options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
options.mimeType = "image/jpeg";
options.chunkedMode = false;
options.params = {atoken : app.atoken, user_id : window.localStorage.getItem("user_id")}; // if we need to send parameters to the server request
var ft = new FileTransfer();
//alert(app.base_url + "/apiuser/updatePic");
ft.upload(fileURI, encodeURI(app.base_url + "/apiuser/updatePic"), win, fail, options);
}

function capturePhoto() {
navigator.camera.getPicture(onCapturePhoto, onFail, {
quality: 100,
sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY,
destinationType: destinationType.FILE_URI
});
}

function onFail(message) {
alert('Failed because: ' + message);
}

capturePhoto();

最佳答案

已在 config.xml 中修复

我用过

<gap:plugin name="org.apache.cordova.file"/>
<gap:plugin name="org.apache.cordova.file-transfer"/>

代替

<feature name="File">
<param name="android-package" value="org.apache.cordova.FileUtils" />
</feature>
<feature name="FileTransfer">
<param name="android-package" value="org.apache.cordova.FileTransfer" />
</feature>

我在 Android 上使用 phonegap 3.4.0

关于cordova - Phonegap FileTransfer 错误代码返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23510794/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com