喵-见缝插针 2017-07-17 09:11 采纳率: 0%
浏览 41

JavaScript到节点

I am currently using a form builder (https://github.com/kevinchappell/formBuilder) which provides me with a GUI to build custom forms. The output I get is in JSON form, stored in a JavaScript variable. I need to use this JavaScript variable in the back end to store in my MongoDB.

I tried using AJAX for this purpose however I failed to retrieve the value. My AJAX code is as follows:

document.getElementById('getJSON').addEventListener('click', function() {
  var ans = formBuilder.actions.getData('json', true);


    $.ajax({
        type: "POST",
        data: ans,
        url: "/j",
        success: function(data){
            console.log(data);
        }
    }); 
   document.forms["myForm"].submit();

And at the server end:

router.post('/j', function(req, res, next) {
    req.session.fdata = req.body;
    res.redirect('/log2');
});

I keep getting this error:

Error: Can't set headers after they are sent.
at validateHeader (_http_outgoing.js:504:11)
at ServerResponse.setHeader (_http_outgoing.js:511:3)
at ServerResponse.header (C:\Users\Abhishek\Basics\first-express ode_modules\express\libesponse.js:730:10)
at ServerResponse.send (C:\Users\Abhishek\Basics\first-express ode_modules\express\libesponse.js:170:12)
at done (C:\Users\Abhishek\Basics\first-express ode_modules\express\libesponse.js:967:10)
at Object.exports.renderFile (C:\Users\Abhishek\Basics\first-express ode_modules\jade\lib\index.js:374:12)
at View.exports.__express [as engine] (C:\Users\Abhishek\Basics\first-express ode_modules\jade\lib\index.js:417:11)
at View.render (C:\Users\Abhishek\Basics\first-express ode_modules\express\lib\view.js:128:8)
at tryRender (C:\Users\Abhishek\Basics\first-express ode_modules\express\lib\application.js:640:10)
at Function.render (C:\Users\Abhishek\Basics\first-express ode_modules\express\lib\application.js:592:3)
at ServerResponse.render (C:\Users\Abhishek\Basics\first-express ode_modules\express\libesponse.js:971:7)
at C:\Users\Abhishek\Basics\first-express\app.js:50:7 at Layer.handle_error (C:\Users\Abhishek\Basics\first-express ode_modules\express\libouter\layer.js:71:5)
at trim_prefix (C:\Users\Abhishek\Basics\first-express ode_modules\express\libouter\index.js:315:13)
at C:\Users\Abhishek\Basics\first-express ode_modules\express\libouter\index.js:284:7
at Function.process_params (C:\Users\Abhishek\Basics\first-express ode_modules\express\libouter\index.js:335:12)

My /log2 route is

router.get('/log2', function(req, res, next) {
  res.render('log2',{ fdata: req.session.fdata});
  res.session.fdata=null;
});
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 #MATLAB仿真#车辆换道路径规划
    • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
    • ¥15 数据可视化Python
    • ¥15 要给毕业设计添加扫码登录的功能!!有偿
    • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
    • ¥15 微信公众号自制会员卡没有收款渠道啊
    • ¥100 Jenkins自动化部署—悬赏100元
    • ¥15 关于#python#的问题:求帮写python代码
    • ¥20 MATLAB画图图形出现上下震荡的线条
    • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘