Node.js和JSON

我是node.js的新手,请耐心等待。

这是我的情况:

我有一个返回JSON的URL。 我需要把这个JSON,并传递给一个JavaScript函数,返回一个自定义模板。 目前我正在使用PHP来处理来自客户端的请求。 我不确定这里最好的方法是什么。 我试过将URL作为parameter passing给.js程序。 我也试过把JSON作为parameter passing,但是根本不起作用。 我正在使用shell_exec来调用节点脚本。 我能够写简单的文本行,他们行事我期待的方式。

  1. 我知道这不是最好的办法,另一个解决scheme?
  2. 我如何传递JSON并将其parsing为一个参数?
  3. 如何从JavaScript使用JavaScript获取内容?

PHP代码

$json = "{'a':'1','b':'2'}"; $test = shell_exec("node example.js ".$json); 

Example.js

 var data = String(process.argv.splice(2)); console.log(data); 

由于空格和引号在命令行中有特殊的含义,所以你必须在php中把它们转义出来。 另请注意,JSONstring必须用双引号分隔。 如果您不是100%确定生成JSON的有效性,则应该使用json_encode函数:

 <?php $json = '{"a":"1","b":"2"}'; // or, better: $json = json_encode(array("a"=>"1", "b"=>"2")); $test = shell_exec("node example.js ". escapeshellarg($json)); echo $test; 

另外,你的node.js代码实际上并不parsingJSON,并且没有很好的理由将一个数组转换成一个string。 相反,你想要:

 var data = JSON.parse(process.argv[2]); console.log(data);