PHP Web服务请求和响应

时间:2013-12-24 17:02:28

标签: php web-services

我正在使用PHP 5.3,并尝试开发一个简单的Web服务,该服务使用POST方法获取一些参数并有响应。

function start(){
    getAndValidateParams();

    global $response;
    echo json_encode($response);
}

function getAndValidateParams(){
    // token (mandatory)
    if(isset($_POST[PARAM_TOKEN])){
        echo 'got your token';
    }else{
        $response[ERROR_CODE] = ERR2_INVALID_TOKEN;
        $response[DESCRIPTION] = CODE2_DESC;
    }
}

我正在尝试使用Postman进行测试: enter image description here

问题:
1.关于Xdebug HTML我看到了以下question,如果我关闭var_dump,它会禁用我的php代码中var_dump()的使用吗? (我希望能够将它用于调试但在响应中没有看到它。)

2.我传递参数'token'时遇到问题,我在getAndValidateParams()中看不到。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我已经使用你的功能来深入了解这个并且为了测试你也可以使用chrome中的高级REST客户端,类似于你正在使用的postMAN - 使用以下行来调试 -

function start(){
        $response = getAndValidateParams();
        return json_encode($response);
    }

//调用函数在这里结束

// statrt another function that is being called 

function getAndValidateParams(){
    // token (mandatory)
    // print_r($_POST);die;  // just for debug purpose
    if(isset($_POST[PARAM_TOKEN])){
       $response[ERROR_CODE] = 0; 
       $response[DESCRIPTION] = "Success";
       $response[DEtail] = $yourdetailarr; // array of data that you want to retuen

    }else{
        $response[ERROR_CODE] = ERR2_INVALID_TOKEN;
        $response[DESCRIPTION] = CODE2_DESC;
    }
  return $response;
}
/// ends here

通过调用start函数检查响应。