在node.js

时间:2017-02-01 12:58:25

标签: javascript node.js

我在服务器端有app.js文件,在客户端有index.ejs。 我需要在index.ejs上从服务器端调用一个函数,并获得有关函数执行的index.ejs的反馈。

Index.ejs:

function getData(sessionid, numberOrigin){

//console.log(sessionid);
    $.ajax({
        type: 'POST',
        dataType: 'json',
        contentType: "application/json",
        url: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx/data/query',
        data: JSON.stringify({  "sessionID": sessionid, 
                                "xxxxxxx":"xxxxxData",  
                                "parameters": { "data": context.data} 
                            }),
        success:function(output) {
            //console.log(output);
            var name = output.result[0].test;
            alert(test);

        },
        error:function(output) {
            return '0';

        console.log(output);
       }
    });
    };

App.js:

 function updateMessage(res, input, response) {

        if (context.counter === 2) {
          getData(); //function inside index.ejs

       // console.log('it's ok');  //it works fine
      }

我是node.js的新手。希望有人可以帮助我。 如果有其他替代或最佳实践来解决这个问题,请告诉我。

1 个答案:

答案 0 :(得分:0)

如果从服务器调用客户端功能是必要的,那么您将需要某种类型的开放连接,如Websockets,并在客户端侦听来自服务器的新消息并做出相应的反应。 可以在这里找到一些示例:如何从NodeJS服务器端调用客户端浏览器上的javascript函数?