如何从客户端javascript调用特定的node.js方法

时间:2013-03-12 10:47:24

标签: javascript node.js

在我的应用程序中,我在node.js文件中创建了许多方法。如何从客户端javascript调用特定方法。

下面是我的node.js文件

        exports.method1=function(){

          }

        exports.method2=function(){

          }

         exports.method3=function(){

          }

2 个答案:

答案 0 :(得分:3)

您的客户应发送消息,例如:

socket.emit("callMethod", {"methodName":"method3"});

在您的服务器中:

socket.on("callMethod", function(data) {
    if(data["methodName"] == "method3") {
        exports.method3();
    }
});

您不直接调用方法,而是发送事件/消息。

答案 1 :(得分:0)

我会避免使用套接字,除非你真的需要,根据我的经验,它们可能很昂贵。套接字非常适合用户保持参与一段时间的密集型应用程序,否则我建议使用带有javascript和node.js的RESTful设置,例如:

http://blog.modulus.io/nodejs-and-express-create-rest-api

这样套接字并不总是必须打开,这会导致更多的开销。 REST将使用http请求,而套接字将通过TCP直接连接。如果你的应用不会经常吸引用户,而是在这里和那里都有更新,那么REST会更好。