我有一个使用 Code igniter 构建的 Web 应用程序,它正在运行,并且希望能够通过邮递员从某个控制器调用一些功能。
因为我正在使用邮递员(出于测试目的),所以我忽略了整个登录/验证逻辑,只专注于实现控制器的功能。
问题是我的
$_POST
(和我的$this->input->post()
)变量在到达控制器函数时是空的。我已经尝试将此变量记录在 Config.php
文件中(我相信这是使用 Code Ignitier 时要调用的第一个文件)并且此时它已经是空的。 我如何测试?
在我的公共功能中,我正在打印
$this->input->post()
的结果。从邮递员调用该函数时结果为空,但当我从我的网络应用程序中调用时,结果显示通过请求传递的有效负载。 Config.php
文件,这是我尝试打印 $_POST
的值的地方。
json_decode(file_get_contents('php://input'), true);
但没有成功。 我的php代码:
public function myFunction()
{
$x = json_decode(file_get_contents('php://input'), true);
var_dump($x);
var_dump($_POST);
var_dump($this->input->post('payload'));
}
总结:
要求:
发布:http://localhost/myController/myFunction
标题:
用户名:我的用户
调用 myFunction 的结果:
NULL
array(0) {}
NULL
为什么在使用邮递员时,
$this->input->post()
和 $_POST
在这两种情况下都是空的? 编辑: 如前所述,我尝试使用
form-data
和 x-www-form-urlencoded
但结果仍然相同。