Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AngularJS - Receive and download CSV

I am using a nodeJS program as a server and an AngularJS web application as the client.

To create the CSV I'm using the "express-csv" library (https://www.npmjs.com/package/express-csv)

Here is my server side code:

Defines:

var app = express();
var csv = require('express-csv');

Get code:

app.get('/exportDB', function(req, res){
    res.csv([
    ["a", "b", "c"]
  , ["d", "e", "f"]
  ]);

Here is my client side code:

$http.get("http://"+$localStorage.ip+":"+$localStorage.port+"/exportDB").success(function(response){
            // HERE I NEED A WAY TO DOWNLOAD THE RECEIVED CSV
        });

Needless to say it reaches the server and everything else is working just fine, but I couldnt find a way to download the CSV. Help please.

P.S

Please don't say it's a duplicate of Prompt a csv file to download as pop up using node.js and node-csv-parser (node module) since the client side isn't really mentioned there. Also, other questions are focused on server side instead of client. There is no other question referring to AngularJS client.

like image 551
Guy Ben-Moshe Avatar asked Apr 22 '16 11:04

Guy Ben-Moshe


1 Answers

You can just navigate:

location.href = "http://"+$localStorage.ip+":"+$localStorage.port+"/exportDB";
like image 120
karaxuna Avatar answered Oct 11 '22 16:10

karaxuna