Ich habe es funktioniert, hier ist der Code, den ich
uploadFile('test.zip', 'Test', 'multipart/x-zip');
function uploadFile(fileName, dirName, fileMime) {
var win = function(r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
alert(r.response);
};
var fail = function(error) {
alert("An error has occurred: Code = " = error.code);
};
var fileURI;
var gotFileSystem = function(fileSystem) {
fileSystem.root.getDirectory(dirName, {
create : false
}, function(dataDir) {
fileURI = dataDir.fullPath;
fileURI = fileURI + '/' + fileName;
alert(fileURI);
var options = new FileUploadOptions();
options.fileKey = "file";
options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
options.mimeType = fileMime;
var params = new Object();
params.value1 = "test";
params.value2 = "param";
options.params = params;
var ft = new FileTransfer();
ft.upload(fileURI,
// Enter the server url
"http://example.com/upload.php", win,
fail, options);
}, dirFail);
};
// file system fail
var fsFail = function(error) {
alert("failed with error code: " + error.code);
};
// get file system to copy or move image file to
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFileSystem,
fsFail);
var dirFail = function(error) {
alert("Directory error code: " + error.code);
};
}
verwendet Ist es bcoz der falschen URI? Gibt es eine Möglichkeit, den richtigen URI für die SD-Karte zu erhalten? Versucht mit 'file: ///test/test.zip' und 'content: //media/external/test/test.zip' –
Die von Ihnen angegebene FileAPI sagt, dass im Falle eines Fehlers. Der Fehler wird im Fehlerrückruf mit dem FileTransferError-Objekt gemeldet. Was sagt dieses Objekt? –
Fehler erhalten "Fehler beim Fehlerrückruf: FileTransfer3 = ReferenceError: Ungültige linke Seite in Zuweisung". Aber ich kann erfolgreich ein Bild hochladen, wenn FILEURI als "content: // media/external/images/media/963" angegeben wird. Ich vermute etwas falsch mit meiner zip fileURI? –