我正在研究一個程序,我想在pdf設備中保存pdf blob。 這是服務器端的代碼,在接收PDF數據爲'結果'的回調中。將pdf blob下載到Cordova Android設備中Android設備
var file = new Blob([result.data], {
type: 'application/pdf;charset=utf-8;'
});
return file;
});
在客戶端,以下代碼在chrome調試瀏覽器中工作,並且pdf已成功下載。然而在設備上,我得到以下錯誤:
11-18 18:13:27.255 10504-10707/? D/FileTransfer: download blob:file:///e9088aac-8525-4071-9280-164a6e15c22e to file:///storage/emulated/0/Download/loanContract_11-10-2016_9-29-59-715.pdf
11-18 18:13:27.255 10504-10707/? E/FileTransfer: Unsupported URI: blob:file:///e9088aac-8525-4071-9280-164a6e15c22e
這裏的數據window.URL.createObjectURL(數據)是由服務器返回的文件的blob。 Phonegap/Cordova 3.6 - Download of file through blob:file沒有幫助我解決問題。
var fileURL = window.URL.createObjectURL(data);
$scope.content = data;
a.href = fileURL;
a.download = fileName;
a.click();
console.log("Inside parent function");
$scope.fileName = fileName;
window.resolveLocalFileSystemURL(cordova.file.externalRootDirectory, function (dirEntry) {
download($scope.fileURL, dirEntry.toURL()+'Download/'+ $scope.fileName) ;
}, function() {});
var download = function (uri, fileURL) {
$cordovaFileTransfer.download(
uri,
fileURL,
function (success) {
console.log(success);
},
function (err) {
console.log(err);
}, true)
};
如果我給它發送一個PDF文件作爲HTTP響應的URL和我公司提供的API的URL作爲參數URI來cordovaFileTransfer.download,則PDF會保存。 請幫助我在設備上將此bob保存爲pdf。