gpt4 book ai didi

php - Node.js 和 JSON

转载 作者:行者123 更新时间:2023-11-30 10:45:07 25 4
gpt4 key购买 nike

我是 node.js 的新手,所以请多多包涵。

这是我的情况:

我有一个返回 JSON 的 URL。我需要获取此 JSON 并将其传递给返回自定义模板的 javascript 函数。目前我正在使用 php 来处理来自客户端的请求。我不确定这里最好的方法是什么。我试过将 URL 作为参数传递给 .js 程序。我也试过将 JSON 作为参数传递,但这根本不起作用。我正在使用 shell_exec 调用 Node 脚本。我能够编写简单的文本行,并且它们按照我期望的方式运行。

  1. 我知道这不是最好的方法,另一种解决方案?
  2. 如何传递 JSON 并将其作为参数进行解析?
  3. 如何使用 javascript 从 URL 获取内容?

PHP代码

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

示例.js

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

最佳答案

由于空格和引号在命令行中具有特殊含义,因此您必须 escape他们在 php 中。另请注意,JSON 字符串必须 用双引号分隔。如果您不能 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 代码实际上并没有解析 JSON,并且无缘无故地将数组转换为字符串。相反,您想要:

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

关于php - Node.js 和 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8843513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com