Javascript AngularJS应用程序未下载文件

Javascript AngularJS应用程序未下载文件,javascript,ruby-on-rails,angularjs,csv,Javascript,Ruby On Rails,Angularjs,Csv,我有一个rails服务器,它通过http请求生成csv,如下所示: @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.cs

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

@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')
看起来,当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){
有人知道如何让下载正常工作吗

EDIT:这可能是一个语法问题,因为我实际上没有写那么多javascript。Bust当我看着它时,我不明白为什么它会告诉我undefined不是一个函数。

文件没有保存方法,你应该可以通过

 var hiddenElement = document.createElement('a');
        hiddenElement.href = 'data:attachment/csv,' + encodeURI('test,1234,1232,test');
        hiddenElement.target = '_blank';
        hiddenElement.download = 'result.csv';
        hiddenElement.click();
没有任何文件.save(result,function(content){});功能性

在控制台中运行上述代码将开始下载我传入的内容

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