Node.js 如何执行jsonp响应?或者如何为函数调用生成字符串?

Node.js 如何执行jsonp响应?或者如何为函数调用生成字符串?,node.js,jsonp,exec,Node.js,Jsonp,Exec,以下场景: 我使用Node.js连接到API。 我发出一个请求并得到一个jsonp响应。 这个反应看起来像: processResponse({"LoginResponse":{"@token":"x"}}) 就这样。就是那一行:字符串/对象/文本 我还有一个函数processResponse 我的问题是:如何执行响应,因为它只是一个对象。我希望将字符串“解析”为函数调用 client.methods.loginRequest(loginArgs, function(data,respon

以下场景:

我使用Node.js连接到API。 我发出一个请求并得到一个jsonp响应。 这个反应看起来像:

processResponse({"LoginResponse":{"@token":"x"}})
就这样。就是那一行:字符串/对象/文本

我还有一个函数processResponse

我的问题是:如何执行响应,因为它只是一个对象。我希望将字符串“解析”为函数调用

  client.methods.loginRequest(loginArgs, function(data,response){
      //response body as js object
      console.log(data);
      // processResponse({"LoginResponse":{"@token":"x"}})

      // now I wish to execute it.
      data;        // this doesn't work
      data.exec(); // this doesn't work
      ?            // what else
  });

  function processResponse(data){
      console.log(data);
  };

我希望有一种方法?

从技术上讲,您可以使用evaldata以javascript语句的形式执行响应,但是正确的JSONP调用不应该以这种方式工作,并且以这种方式对来自服务器的未录制数据使用eval存在安全风险。正确的JSONP调用应该会导致您接收一个javascript对象,然后您可以将该对象传递给您想要的任何函数调用。您应该向服务器请求数据,而不是请求将要执行的javascript语句。谢谢,这是我搜索的关键字。是的,我完全同意你的看法。在生产中,这种变通方法不是这样做的。我想更多的是关于沙盒中的一些案例。例如,不同响应例程的性能度量。
  client.methods.loginRequest(loginArgs, function(data,response){
      //response body as js object
      console.log(data);
      // processResponse({"LoginResponse":{"@token":"x"}})

      // now I wish to execute it.
      data;        // this doesn't work
      data.exec(); // this doesn't work
      ?            // what else
  });

  function processResponse(data){
      console.log(data);
  };