节点js函数一次又一次地调用

时间:2016-08-07 05:22:23

标签: javascript jquery node.js

我正在使用nodejs express框架进行开发。网页有两个按钮

1)提交,调用以下函数:

router.get('/record_enrich_quick/:quick', function(req, res) {
    console.trace();
    var json_struct={};
    json_struct["start_time"]=req.params.quick;
    json_struct["end_time"]="now";      
    json_struct["cookie"]=Math.random().toString();

    var data=JSON.stringify(json_struct);
    var args={
        data:data,
        headers: { "Content-Type": "application/json" }
    }
    //var Rest = require('node-rest-client').Client;
    //var client=new Rest();

    de_rest_client.post("http://localhost:8080/recordenrich",args,function(data,response){
        console.log("Received response from data enrich start");
    });
});

2)刷新,调用以下功能

router.get('/getDataEnrich/:from', function(req, res, next) {
    var fromValue = req.params.from;
    //Calls Elasticsearch and gets the data from it .
});

问题:

当我点击提交时,REST呼叫会一次又一次地重复。

此调用无法从前端开始,即:HTML。原因是我无法在开发人员工具的网络端找到该呼叫。

此外,我在HTML端javascript上有一个调试点,其中" / record_enrich_quick /:quick"被调用,第二次调试器甚至没有指向这里。这意味着有多个其他地方可以多次调用此函数。

总结:

我的多次调用具有休息调用的函数,而调用此函数的按钮只被调用一次。

是否与nodejs事件队列有关?我不确定。

1 个答案:

答案 0 :(得分:1)

我终于找到了原因

我提交的部分代码没有响应.end .Below代码解决了我的问题.Lesson是我们不能保持请求挂起

UIGraphicsImageRenderer