如何在AngularJS中下载和显示文本和png文件?

时间:2014-04-03 19:04:25

标签: javascript angularjs http angular-ui

我将文本和图像文件存储在服务器上,我需要下载并在html网页中显示。我正在使用AngularJS来呈现页面。如果我使用下面的代码获取文件,那么我得到一个http 200状态响应,但该文件不在正文中或响应中的任何其他位置。如果我在FireFox浏览器中输入完全相同的URI,我会得到标准提示,以便在本地保存文件,所以我知道uri可以工作。

如何在AngularJS中获取它?当我得到它时,我该如何显示它们?

app.controller('MainController', function($scope, dataService) {
    $scope.data = null;
    dataService.getData().then(function(dataResponse) {
        $scope.data = dataResponse;
    });
});

app.service('downloadService', function($http) {
    delete $http.defaults.headers.common['X-Requested-With'];
    this.getData = function() {
        console.log("getting data");
        return $http({
            method: 'GET',
            url: 'https://someAddress.com/pathtofile.txt?securitykey=fakeKey',
            params: '',
            headers: {}
        });
    }
});

- 更新 -

根据下面的评论,我将代码更新为以下内容,但我只看到图像的图标占位符,而不是图像本身。

var app = angular.module('MyTutorialApp',[]);

app.controller("MainController", function($scope){
    $scope.path_to_image = "https://someAddress.com/pathtofile.png?securitykey=fakeKey"
});

<div id='content' ng-app='MyTutorialApp' ng-controller="MainController">
    <img ng-src="path_to_image">
</div>

1 个答案:

答案 0 :(得分:0)

对于图像文件,无需编写http处理程序

您可以显示图像 -

controller.js

$scope.path_to_image = "https://someAddress.com/pathtofile.png"

html

<img ng-src="path_to_image">