前端Ajax使用Raw Json 或 Request Payload方式提交POST请求时,服务端使用常规的 $_POST 获取不到请求的参数。可以使用以下处理获取请求参数并合并到$_POST数组中。
服务端代码:
<?php
var_dump($_POST);
?>
前端请求(Postman模拟):
服务端修改后代码:
<?php
// 兼容 Raw Json 或 Request Payload 的传参方式
$raw = $GLOBALS['HTTP_RAW_POST_DATA'];
$raw = json_decode($raw, true);
if($raw != null && is_array($raw) == true)
{$_POST = array_merge($_POST, $raw);
}var_dump($_POST);
exit();?>
前端请求(Postman模拟):