【问题标题】:How to make browser download json returned from rest service如何使浏览器下载从休息服务返回的json
【发布时间】:2013-09-24 12:27:28
【问题描述】:

我使用的框架是 AngularJS(客户端)和 Sitebricks(服务器端)。 我想将一个对象列表返回到 json 中,并通过提示用户将文件保存到哪里来让客户端下载该 json。

我接受各种提议。 提前干杯。

【问题讨论】:

  • 好吧,困扰我的是服务器上有一个实际文件。我无法在服务器上创建任何文件,因此无法发送文件。我想我可以创建一个流并从服务器和客户端发送字符串数据以读取流。谢谢

标签: json rest angularjs download sitebricks


【解决方案1】:

听起来您想在浏览器中创建文件,并将其保存到用户的本地计算机。此处介绍了一种方法,但在 IE Javascript: Create and save file 中不起作用

这是一个小提琴:http://jsfiddle.net/vUdyD/

$(function() {
  function exportToCsv() {
        var myCsv = "Col1,Col2,Col3\nval1,val2,val3";

        window.open('data:text/csv;charset=utf-8,' + escape(myCsv));
    }

    var button = document.getElementById('b');
    button.addEventListener('click', exportToCsv);
});

【讨论】:

    【解决方案2】:

    您可以使用 HTML5 download 属性。它并不完美和浏览器支持

    <!-- will download as "expenses.pdf" -->
    <a href="/files/adlafjlxjewfasd89asd8f.pdf" download="expenses.pdf">Download Your Expense    Report</a>
    

    演示:http://davidwalsh.name/download-attribute

    支持:http://caniuse.com/#feat=download

    【讨论】:

    • 这里又是在服务器上有文件的情况。但我无法在服务器上创建任何文件.. 所以我无法将文件传递给客户端。
    猜你喜欢
    • 1970-01-01
    • 2019-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 2012-07-20
    • 2019-03-26
    • 2015-03-12
    相关资源
    最近更新 更多