【发布时间】:2020-04-07 14:45:06
【问题描述】:
我有一个 angularjs 控制器,它从休息端点检索 URL。响应包含 S3 上文本文件的 URL,并使用该文件的内容填充隐藏 iframe 的 src 属性。
模板
<div>
<button ng-click="myCtrl.getUrl()" class="btn btn-default"></button>
<iframe ng-hide="true" ng-src="{{myCtrl.s3Link}}"></iframe>
</div>
控制器
angular
.module('app')
.component('myComponent', {
templateUrl: 'template.html',
controller: MyController,
controllerAs: 'myCtrl'
});
function MyController($http, $sce) {
var vm = this;
var savedState = browserBackService.retrieveState('resultsPage');
vm.getUrl = getUrl;
vm.s3Link = '';
function getUrl() {
vm.extractDownloadLink = '';
$http.get('/api/getS3url').then(extractSuccessCallback);
}
function extractSuccessCallback(response) {
vm.extractDownloadLink = $sce.trustAsResourceUrl(response.data.url);
}
}
休息反应
{
"url":"https://myaws.aws.net/s3_bucket/1/2/myFile.txt"
}
文件存在,路径正确。在 Chrome 和 Firefox 中,这会触发“另存为”对话框,这是正确的行为,但在 Internet Explorer 10 和 Edge 上,什么都没有发生。
需要进行哪些更改才能在 IE 中成功完成?
【问题讨论】:
标签: angularjs internet-explorer-11 microsoft-edge