如何在 PHP 中获取 node-fetch 的数据?

How to get node-fetch's data in PHP?

我正在尝试制作一个将 JSON 数据发送到 PHP 服务器并从中获取响应的应用程序。我正在为此使用 JavaScript node-fetch 库。

这是我的示例代码:

    const fetch = require("node-fetch");
    let data = JSON.stringify(something);

    fetch("https://example.com/api", {
        method: "post",
        body: data,
        headers: { 'Content-Type': 'application/json' }
    })
        .then(res => res.text())
        .then(ret=>{
            console.log(ret);
        });

我正在尝试通过 PHP 中的 $_POST 获取此信息:

var_dump($_POST);

但它 returns 空数组。

我怎样才能在 PHP 上看到这个,或者我做错了什么?

$_POST is only filled with values when receiving a request body with the application/x-www-form-urlencoded or multipart/form-data Content-Type header.

所以你需要像这样处理 JSON 主体:

$inputJSON = file_get_contents("php://input");
$input = json_decode($inputJSON, true);

var_dump($input);