[英]How to print data from a csv file on a browser in nodejs
I want to read a csv file and whenever someone connects to my server it prints the content of the file in their browser.我想读取 csv 文件,每当有人连接到我的服务器时,它就会在浏览器中打印文件的内容。
I have this module called 'lecture_csv' that lets me read the file and directly print it in the terminal:我有一个名为“lecture_csv”的模块,它可以让我读取文件并直接在终端中打印它:
var csv = require('csv-parser')
var fs = require('fs')
function lecture_csv(fileName) {
fs.createReadStream(fileName)
.pipe(csv())
.on('data', (row) => {
//console.log(row)
return row;
})
.on('end', () => {
console.log('fichier lu');
});
}
exports.lecture_csv = lecture_csv
What I want is to print 'row' on the client browser.我想要的是在客户端浏览器上打印“行”。
However in my main:但是在我的主要:
let lecture = require('./lecture_csv');
var http = require('http');
//let app = require('./app');
var fileName = 'test_file.csv'
var string = ''
//lecture.lecture_csv(fileName);
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write(lecture.lecture_csv(fileName));
res.end();
}).listen(9000);
I have an error saying I can't use res.write as the parameter in undefined instead of a string.我有一个错误说我不能使用 res.write 作为 undefined 中的参数而不是字符串。 Is there a way to get 'row' and print it on the client browser?有没有办法获取“行”并将其打印在客户端浏览器上?
I am still very new to nodejs therefore any tips is welcomed.我对 nodejs 还是很陌生,因此欢迎任何提示。
You have to read file and send its contents,like below您必须读取文件并发送其内容,如下所示
let lecture = require('./lecture_csv');
let fs=require("fs");
var http = require('http');
var fileName = './test_file.csv'
var string = ''
//lecture.lecture_csv(fileName);
http.createServer(function(req, res){
fs.readFile(fileName, 'utf8', function(err, contents) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write(contents);
res.end();
});
}).listen(9000);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.