AngularJS应用程序未下载文件

约翰科瑟

我有一个从http请求生成csv的rails服务器,如下所示:

@results = some_json_string
require 'csv'
csv_string = CSV.open("results.csv","wb") do | csv|
        JSON.parse(@results).each do |hash|
                csv << hash.values
        end
end
send_file('results.csv')

还有一个从服务器请求此CSV文件的AngularJS应用程序

angular.module('myApp')
   .controller('QueryCtrl', ['$scope', 'Query', function ($scope, Query) {
     $scope.csvSubmit = function() {
      var csv = $.post('http://ip_addr:3000/api/csv', { 'input': 'my_request' });
      csv.done(function(result){
         File.save(result, function(content){
            var hiddenElement = document.createElement('a');
            hiddenElement.href = 'data:attachment/csv,' + encodeURI(content);
            hiddenElement.target = '_blank';
            hiddenElement.download = 'result.csv';
            hiddenElement.click();
      });
    });
   }
  }
])

看起来,当Angular应用发出http请求时,Rails服务器会通过csv文件进行发送。

从rails日志中:

 GET /professional/maintain/status/ 200 224 - - 0 2908 - -\n"}
 Sent file results.csv (0.1ms)
 Completed 200 OK in 976ms (ActiveRecord: 0.0ms)

但是,Angular应用程序无法成功将文件下载到客户端计算机。相反,javascript控制台显示此错误:

Uncaught TypeError: undefined is not a function query.js:8

第8行是这一行:

File.save(result, function(content){

任何人都有一个想法如何使此下载正常工作?

编辑:这可能是语法问题,因为我实际上没有编写太多的JavaScript。当我看着它时,我不能确定为什么它会告诉我undefined不是一个函数。

迈克尔·比雅各

文件没有保存MDN文档的方法,您应该可以通过以下方式完成下载

 var hiddenElement = document.createElement('a');
        hiddenElement.href = 'data:attachment/csv,' + encodeURI('test,1234,1232,test');
        hiddenElement.target = '_blank';
        hiddenElement.download = 'result.csv';
        hiddenElement.click();

没有任何File.save(result,function(content){}); 功能性

在控制台中运行以上代码,将开始下载带有我传入的内容的内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从 URL 下载文件的应用程序

来自分类Dev

webview下载应用程序但未下载

来自分类Dev

我的应用程序中的可下载文件

来自分类Dev

IMAP邮箱未下载文件

来自分类Dev

下载文件,验证下载,如果未下载则重试

来自分类Dev

如果应用程序被服务破坏,我如何保持下载文件运行(下载)?

来自分类Dev

从闪亮的应用程序下载文件时如何设置您选择的文件名

来自分类Dev

使用Kivy应用程序下载文件,而不会锁定事件循环

来自分类Dev

更改时部署ASP.Net MVC,Angular应用程序下载文件

来自分类Dev

从服务器下载文件时应用程序冻结

来自分类Dev

如何从OS X应用程序中的URL下载文件

来自分类Dev

应用程序从后台终止后是否可以继续下载文件

来自分类Dev

如何在多页面应用程序中使用plotly-dash下载文件?

来自分类Dev

从Blazor客户端应用程序从ASP.NET Core API下载文件

来自分类Dev

下载文件后Blazor服务器端应用程序死亡

来自分类Dev

从服务器下载文件的GraphQL / Apollo应用程序

来自分类Dev

从请求中发送到django应用程序的url下载文件

来自分类Dev

使用scala-ssh下载文件后,应用程序不会退出

来自分类Dev

应用程序从后台终止后是否可以继续下载文件

来自分类Dev

从命令行应用程序更改下载文件夹目标

来自分类Dev

写入沙盒应用程序中的下载文件夹

来自分类Dev

X accel重定向未下载文件

来自分类Dev

Java FTP客户端未下载文件

来自分类Dev

Google Drive API下载文件-Python-未下载文件

来自分类Dev

Firefox下载种子使我没有打开它们的应用程序-只需打开下载文件夹

来自分类Dev

Firefox下载种子使我没有打开它们的应用程序-只需打开下载文件夹

来自分类Dev

是否有一些应用程序可以从流行的文件托管网站下载文件?

来自分类Dev

是否有一些应用程序可以从流行的文件托管网站下载文件?

来自分类Dev

文件未下载

Related 相关文章

  1. 1

    从 URL 下载文件的应用程序

  2. 2

    webview下载应用程序但未下载

  3. 3

    我的应用程序中的可下载文件

  4. 4

    IMAP邮箱未下载文件

  5. 5

    下载文件,验证下载,如果未下载则重试

  6. 6

    如果应用程序被服务破坏,我如何保持下载文件运行(下载)?

  7. 7

    从闪亮的应用程序下载文件时如何设置您选择的文件名

  8. 8

    使用Kivy应用程序下载文件,而不会锁定事件循环

  9. 9

    更改时部署ASP.Net MVC,Angular应用程序下载文件

  10. 10

    从服务器下载文件时应用程序冻结

  11. 11

    如何从OS X应用程序中的URL下载文件

  12. 12

    应用程序从后台终止后是否可以继续下载文件

  13. 13

    如何在多页面应用程序中使用plotly-dash下载文件?

  14. 14

    从Blazor客户端应用程序从ASP.NET Core API下载文件

  15. 15

    下载文件后Blazor服务器端应用程序死亡

  16. 16

    从服务器下载文件的GraphQL / Apollo应用程序

  17. 17

    从请求中发送到django应用程序的url下载文件

  18. 18

    使用scala-ssh下载文件后,应用程序不会退出

  19. 19

    应用程序从后台终止后是否可以继续下载文件

  20. 20

    从命令行应用程序更改下载文件夹目标

  21. 21

    写入沙盒应用程序中的下载文件夹

  22. 22

    X accel重定向未下载文件

  23. 23

    Java FTP客户端未下载文件

  24. 24

    Google Drive API下载文件-Python-未下载文件

  25. 25

    Firefox下载种子使我没有打开它们的应用程序-只需打开下载文件夹

  26. 26

    Firefox下载种子使我没有打开它们的应用程序-只需打开下载文件夹

  27. 27

    是否有一些应用程序可以从流行的文件托管网站下载文件?

  28. 28

    是否有一些应用程序可以从流行的文件托管网站下载文件?

  29. 29

    文件未下载

热门标签

归档