大家好,我从来没有开发过php,但我必须创建一个小函数来对我的meteor节点应用程序发出post请求。终点工作正常我一直在测试它。我正在尝试使用post请求来获取我的登录令牌。提供用户名和密码,它应该返回json数据,即使它是不正确的,它返回json数据说登录被拒绝。
似乎正在发生这种情况。我的返回数据似乎总是为空。
正如我所说,我从未真正使用过php nore,我是否计划使用它。但这里是我的代码可能很容易修复错误。
<?php
$ch = curl_init();
$params = array(
"username" => "apilogin",
"password" => "12345"
);
echo httpPost("http://127.0.0.1:3000/api/login", $params);
function httpPost($url,$params)
{
$postData = http_build_query($params);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_POST, count($postData));
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
$output=curl_exec($ch);
// Check for errors
if($output === FALSE){
echo "false";
die(curl_error($ch));
}
// Decode the response
$output = json_decode($response, TRUE);
curl_close($ch);
return $output;
}
?>
答案 0 :(得分:1)
改变:
$output = json_decode($response, TRUE);
成:
$output = json_decode($output, TRUE);
你从未做过变量$ response