当前位置: 首页 > 面试题库 >

使用AngularJS下载文件

沃侯林
2023-03-14
问题内容

我需要提供下载文件的链接,任何用户都必须隐藏该链接并且可以访问该链接,这是我的代码,没有任何错误,但是我什至无法打开下载对话框:

模板

 <a ng-href="#" target="page" type="button" class="btn" 
ng-click="download()">Download</a>

脚本文件

$scope.download = function(){
 //here i need to know the code,can anybody explain me
}

问题答案:

首先,您不能“隐藏/不公开”基于Web的技术(HTML / CSS / JavaScript)应用程序中的链接。下载是由客户端处理的,因此Download
/ Link-URL必须是公共的。您可以尝试使用后端执行的编程语言(例如“
PHP或node.js等”)来“隐藏”诸如下载URL中的ID之类的保护性参数。通过这种方式,您可以创建hash类似于http://www.myside.com/download/359FTBW!S3T387IHS隐藏参数的URL,例如recordIdURL中的。

通过了解这一点,您的解决方案非常容易。只需使用HTML属性下载像
<a href="http://mydownloadurl" download>link text</a>强制浏览器下载href源。没有ng- click这里需要。不幸的download是,Safari浏览器不支持该属性。当浏览器正在处理下载本身时,这并不重要。根据用户系统OS的配置,文件将被下载或直接在该系统上安装的程序中打开。例如,如果某些pdf查看器应用程序可用,则会在PDF查看器中打开PDF文件。

我写了一个在AngularJS控制器中处理的Plunker。我希望这就是您所需要的。ng- href``$scope

您的控制器:

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

app.controller('MainCtrl', function($scope) {
  $scope.fileHref = 'http://www.analysis.im/uploads/seminar/pdf-sample.pdf';
});

您的看法:

<head>
  <meta charset="utf-8" />
  <title>AngularJS Plunker</title>
  <script>
    document.write('<base href="' + document.location + '" />');
  </script>
  <link rel="stylesheet" href="style.css" />
  <script data-require="angular.js@1.3.x" src="https://code.angularjs.org/1.3.14/angular.js" data-semver="1.3.14"></script>
  <script src="app.js"></script>
</head>

<body ng-controller="MainCtrl">
  <a ng-href="fileHref" download="yourFilename">Download</a>
</body>
</html>


 类似资料:
  • 我有一个用SLIM框架编写的PHP REST API,我有一个API调用,它创建一个docx文件并强制下载该文件。 有人有主意吗?

  • 问题内容: 在我的Angular JS项目中,我有一个锚标记,单击该锚标记会对返回文件的WebAPI方法发出HTTP 请求。 现在,我希望在请求成功后将文件下载给用户。我怎么做? 锚标记: AngularJS: 我的WebAPI方法: 问题答案: 使用ajax对下载二进制文件的支持不是很好,它仍在作为工作草案进行开发。 简单的下载方法: 您可以使用以下代码简单地让浏览器下载所请求的文件,并且所有浏

  • 问题内容: 我在隐藏的文本区域中有一些文本。单击按钮后,我希望提供文本作为文件下载。是否可以使用AngularJS或Javascript? 问题答案: 您可以使用进行类似的操作。 在您的控制器中: 为了启用URL: 请注意 每次调用createObjectURL()时,都会创建一个新的对象URL,即使您已经为同一对象创建了一个URL。当不再需要它们时,必须通过调用URL.revokeObjectU

  • 问题内容: 我正在尝试使用asyncTask下载文件,但无法正常工作,没有错误消息或什么都没有,只是不下载文件…我尝试了所有操作,但似乎并没有输入…任何人都知道可以是问题吗?我在手机上测试过,网址也可以。 问题答案: 我只运行了您的代码,它对我来说很好用。该图像已下载到sdcard。 请注意,请确保在AndroidManifest.xml中设置了以下权限: 这是我得到的日志(请注意,我添加了):

  • 问题内容: 我编写了一些代码来下载我所做的网络广播的一集。它获取剧集的URL,并获取保存它的位置。但是,它最多只能下载16MB,然后自动取消。我不完全确定要增加此值需要更改什么值。是否可以,有人可以指出正确的方向吗?谢谢! 下载代码: 问题答案: 快速查看transferFrom的文档: 好。 计数的值1 << 24(来自原始问题)等于16M 我想这就是您的问题的答案:-)

  • 我想做的是用httpclient下载一个文件。目前我的代码如下。 我的下载URL如下所示:http://example.com/file/afz938f348dfa3 正如你可以看到没有扩展名的文件(至少在网址)然而,当我去一个正常的浏览器网址,它下载文件asdasdaasda.txt或asdasdasdsd.pdf(名称是不同的url和extenstion并不总是相同的,取决于我试图下载什么)。