在 phonegap / cordova 中上传任何类型的文件
Upload any type of file in phonegap / cordova
我正在尝试使用文件传输插件从 Phone-gap 上传文件,但是 FILE_URI
returns Blob 中的文件路径
blob:http%3A//localhost%3A65304/506be833-4afb-42a4-beed-01e43bc9cd64
然后我用下面的代码验证了它 returns 错误代码 5.
Jquery代码:
window.resolveLocalFileSystemURL(cordova.file.applicationDirectory + snapSrc, gotFile, fail);
function fail(e) {
console.log("FileSystem Error");
console.dir(e);
}
function gotFile(fileEntry) {
fileEntry.file(function(file) {
var s = "";
s += "<b>name:</b> " + file.name + "<br/>";
s += "<b>localURL:</b> " + file.localURL + "<br/>";
s += "<b>type:</b> " + file.type + "<br/>";
document.querySelector("#status").innerHTML = s;
console.dir(file);
});
}
- 如何找到文件的名称和类型。
- 如何解决错误代码 5。
您目前正在使用 resolveLocalFileSystemURL
,这是不正确的方法,使用 resolveLocalFileSystemURI
而不是 resolveLocalFileSystemURL
。
您可以试试下面的方法,希望对您有所帮助。
window.resolveLocalFileSystemURI(cordova.file.applicationDirectory + snapSrc, onSuccess, fail);
function onSuccess(fileEntry) {
console.log(fileEntry.name);
}
function fail(error) {
console.log(error.code);
}
如果它不起作用,请告诉我。
此问题已解决,在真机上运行良好,我认为问题出在intel xdk模拟器上。
我正在尝试使用文件传输插件从 Phone-gap 上传文件,但是 FILE_URI
returns Blob 中的文件路径
blob:http%3A//localhost%3A65304/506be833-4afb-42a4-beed-01e43bc9cd64
然后我用下面的代码验证了它 returns 错误代码 5.
Jquery代码:
window.resolveLocalFileSystemURL(cordova.file.applicationDirectory + snapSrc, gotFile, fail);
function fail(e) {
console.log("FileSystem Error");
console.dir(e);
}
function gotFile(fileEntry) {
fileEntry.file(function(file) {
var s = "";
s += "<b>name:</b> " + file.name + "<br/>";
s += "<b>localURL:</b> " + file.localURL + "<br/>";
s += "<b>type:</b> " + file.type + "<br/>";
document.querySelector("#status").innerHTML = s;
console.dir(file);
});
}
- 如何找到文件的名称和类型。
- 如何解决错误代码 5。
您目前正在使用 resolveLocalFileSystemURL
,这是不正确的方法,使用 resolveLocalFileSystemURI
而不是 resolveLocalFileSystemURL
。
您可以试试下面的方法,希望对您有所帮助。
window.resolveLocalFileSystemURI(cordova.file.applicationDirectory + snapSrc, onSuccess, fail);
function onSuccess(fileEntry) {
console.log(fileEntry.name);
}
function fail(error) {
console.log(error.code);
}
如果它不起作用,请告诉我。
此问题已解决,在真机上运行良好,我认为问题出在intel xdk模拟器上。