Extraction du corps de la publication JSON en PHP
Considérez les données JSON POST suivantes :
{a:1}
En PHP, le La variable $_POST par défaut ne contiendra pas ces données. Au lieu de cela, accédez au corps brut de la requête HTTP en utilisant :
$entityBody = file_get_contents('php://input');
Vous pouvez également utiliser la constante STDIN :
$entityBody = stream_get_contents(STDIN);
Notez que php://input n'est pas recherché et ne peut être lu qu'une seule fois. . Pour les corps volumineux, envisagez d'utiliser un fichier temporaire pour conserver la ressource de flux :
function detectRequestBody() { $rawInput = fopen('php://input', 'r'); $tempStream = fopen('php://temp', 'r+'); stream_copy_to_stream($rawInput, $tempStream); rewind($tempStream); return $tempStream; }
Des exceptions se produisent lors de la spécification d'un en-tête "multipart/form-data" dans la requête POST, car PHP analyse déjà ces données dans le $_POST superglobal.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!