我正在尝试生成一个应用程序,以使用NodeJS从mongodb导入CSV文件和将其导出到mongodb,导入数据和fetchdata正常工作,但是exporttocsv不起作用:exporttocsv:1无法加载资源:服务器响应状态为404(未找到) 有什么帮助吗?
routes / index.js:
router.get('/', function(req, res, next) {
res.render('index', { title: 'Import CSV using NodeJS' });
}).get('/import', function(req, res, next) {
var products = []
var csvStream = csv()
.on("data", function(data){
var item = new Productenter code here({
name: data[0] ,
price: data[1] ,
category: data[2],
description: data[3],
manufacturer:data[4]
});
item.save(function(error){
console.log(item);
if(error){
throw error;
}
});
}).on("end", function(){
});
stream.pipe(csvStream);
res.json({success : "Data imported successfully.", status : 200});
}).get('/fetchdata', function(req, res, next) {
Product.find({}, function(err, docs) {
if (!err){
res.json({success : "Updated Successfully", status : 200, data: docs});
} else {
throw err;
}
});
}).get('/exporttocsv', function(req, res, next) {
var filename = "products.csv";
//var dataArray;
Product.find().lean().exec({}, function(err, products) {
if (err) res.send(err);
res.statusCode = 200;
res.setHeader('Content-Type', 'text/csv');
res.setHeader("Content-Disposition", 'attachment; filename='+filename);
res.csv(products, true);
});
});
module.exports = router;
public\javascripts\app.js:
$(function(){
$("#fetchdata").on('click', function(){
$.get( "/fetchdata", function( data ) {
var products = data['data'];
$("#trdata").html('');
$("#message").hide();
var string = '';
$.each(products, function(index, product ) {
string += '<tr><td>'+(index+1)+'</td><td>'+product['_id']+'</td><td>'+product['name']+'</td><td>'+product['category']+'</td><td>'+product['price']+'</td><td>'+product['manufacturer']+'</td></tr>';
});
$("#trdata").html(string);
});
});
$("#importdata").on('click', function(){
$.get( "/import", function( data ) {
$("#message").show().html(data['success']);
});
});
$("#exporttocsv").on('click', function(){
$.get( "/exporttocsv", function( data ) {
$("#message").show();
});
});
});