鉴于我没有设法通过它,我很高兴在以下主题上获得一些帮助。我的目标是在服务器端收集一些数据(到目前为止,我正在使用 alasql 将我的 CSV 文件转换为 sql 表),然后将其作为参数传递给客户端,以在客户端执行其他 sql 操作(再次使用 alasql)。到目前为止,我成功了
- 借助 alasql 将 CSV 文件转换为 sql 表
- 将参数从服务器端传递到客户端
但我没能做到
- 将sql表本身从Server端传递到Client端作为参数
我尝试这样做的最好结果是
`input=[object Object],[object Object],...`
而不是我期望的 sql 表,它给出了一个错误
我在服务器端的代码如下:
var express = require('express');
var session = require('cookie-session'); // Charge le middleware de sessions
var bodyParser = require('body-parser'); // Charge le middleware de gestion des paramètres
var urlencodedParser = bodyParser.urlencoded({ extended: false });
var alasql=require('alasql');
var app = express();
var input=0;
alasql('SELECT * FROM CSV("public/data/output.csv",{separator:";"})',[],function(data){
input=data;
console.log(1)
});
/* On utilise les sessions */
app.use(session({secret: 'TBC'}))
/* S'il n'y a pas de todolist dans la session, on en crée une vide sous forme d'array avant la suite */
.use(function(req, res, next){
next();
})
.use(express.static(__dirname + '/public'))
/* On affiche la todolist et le formulaire */
.get('/segmentation_clients', function(req, res) {
console.log(input);
var Commercial='U.Morel';
res.render('segmentation_clients.ejs', {Commercial:'U. Morel',input:input});
})
.listen(8080);
Client端的JS代码开头(segmentation_clients.ejs):
var Commercial="<%=Commercial%>";
var input= <%=input%>;
console.log(input);
代码输出(#Commercial 参数可以,但#input SQL 表不行): 在此处输入图像描述
非常感谢您对这个主题的帮助
非常感谢斯蒂芬