.NET(Entity Framework)とAngularJSを使用してPDFファイルを取得する簡単なWebアプリケーションを作成しました。私はデスクトップのブラウザとiOSのブラウザでアプリが完璧に動作するようにすることができます。残念ながら、これをAndroidブラウザで動作させることに問題があります。AndroidブラウザでBLOB URLが機能しない
私のコントローラの中には、pdfを要求して表示する単純なボタンをクリックすることによってトリガーされる機能があります。私は解決策hereを使用して、iOSとエッジブラウザでPDFが正しく動作するようにしました。上記のコード上で述べたように
appModule.controller("cellController", ['$scope','$http','$routeParams','$window','$sce', function ($scope, $http, $routeParams,$window,$sce) {
....
$scope.getLayout = function() {
var attachmentPromise = $http.get("/api/pdf" + $routeParams.ID, { responseType: 'blob' }).then(function (result) {
var file = new Blob([result.data], { type: 'application/pdf' });
if (window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveOrOpenBlob(file, "Layout.pdf");
}
else if (window.navigator.userAgent.match('CriOS')) {
var reader = new FileReader();
reader.onloadend = function() { $window.open(reader.result); };
reader.readAsDataURL(file);
}
else if (window.navigator.userAgent.match(/iPad/i) || window.navigator.userAgent.match(/iPhone/i)) {
var url = $window.URL.createObjectURL(file);
window.location.href = url;
}
else {
var url = window.URL || window.webkitURL;
window.open(url.createObjectURL(file));
}
});
};
}]);
は、デスクトップとiOS上でうまく動作しますが、Android上で空白のブロブページを開くか、Android上のファイルをダウンロードするために失敗しますか。
これに関するご提案は大変ありがとうございます。
は、私は必要に応じて作業を取得することができませんでした任意の追加情報