php - JSON 通过 Insomnia 发送,但 PHP 接收到一个空数组
问题描述
我正在使用 Insomnia Rest 来模拟发送到后端的前端 JSON 数据。我也用 Postman 测试过,问题是一样的:
我通过 POST 将 JSON 数据发送到后端,当我打印 $_POST 变量中的内容时,它是空的。
我尝试了 print_r()、json_decode/json_encode 方法、echo、die() 等。它们都不起作用。有两种方法可以处理这些 HTTP 请求:
1)通过“FORM URL Encoded”发送——这个效果很好。问题是它只接受简单的数据。例如,不可能创建对象,在许多情况下,使用对象非常重要;
2) 如前所述,通过 JSON 发送,但在 PHP 中我需要使用:
$json = file_get_contents("php://input");
好吧,在这种情况下,我已经使用 json_encode/json_decode 编写了超过 1000 行的代码。基于这种情况,JavaScript 和 PHP 似乎完成了发送和接收 JSON 数据所需的所有转换,因此 HTTP 模拟软件没有。
有没有人遇到过一些事情并想出了一些解决方法?
解决方案
推荐阅读
- node.js - 所有数据库查询请求的持续 H12 超时错误
- r - 仅当列值在 R 中匹配时才计算 difftime
- mysql - 使用视图获取 MySQL 表中多行的结果
- python - 将具有多个索引的数据框转换为具有列值的键的键
- node.js - Node Js找不到模块./build/Release/generator
- pip - 找到缓存后 github 操作 pip 依赖项不起作用
- rust - 提供带有生命周期的惰性静态引用
- mysql - AWS RDS Mysql 5.7 中缺少 help_keywords
- react-native - React Native Drawer 和 Tab 导航
- javascript - Discord倒数计时器机器人将在计时器下降时自行编辑