我目前正在开发一个向服务器发送邮件请求以进行登录的APP。我团队的后端开发人员有点慢,所以我想我为什么不设置一些模拟网址来测试应用程序。 我有一个用于登录的php文件,当我输入正确的数据时应该返回一个会话。不幸的是,我被困在试图将JSON发布到一些变量中。
事实上,我没有看到任何收到的数据。我试图在$_POST
,$HTTP_RAW_POST_DATA
以及file_get_contents("php://input")
上使用vardump。我试图用json_decode
解码后两个。
有些人给我String(0) ""
其他人给我NULL
。在某些情况下,我什么都没有。
使用改装我向 / login 发送一个
正文的请求{
"password":"password",
"username":"Marcel"
}
然而,当我得到的回报是什么都没有。我的php代码只获取并返回带有会话令牌的json对象
if(!empty($_POST["username"]) && !empty($_POST["password"])){
$id= array('SESSION_ID' => 'random_session_token_0015');
echo json_encode($id);
}
此代码示例不会给我任何回报。使用print_r($_POST);
我将得到一个空数组,如array()
。
$json = file_get_contents('php://input');
$object = json_decode($json);
var_dump($object);
此代码示例确实给了我任何回报,但它是 NULL 。 $HTTP_RAW_POST_DATA
与后一个例子的结果相同。
我很困惑这个问题,有人帮忙吗?
PS。如果您需要更多信息,请点击
答案 0 :(得分:2)
我通过确保将"Content-Type: application/json"
标头发送到我的Node.js服务器来解决同样的问题。