如何使用php api启用对活动监视器的请求和响应的调试

时间:2011-12-20 13:04:00

标签: php debugging api

使用适用于Campaign Monitor的PHP API,它可识别调试/日志记录级别。我没有看到如何访问或转储此日志的示例。

我正在尝试调试为什么 - > add($ arrData)调用成功将信息推送到广告系列监视器,但稍后调用 - > get($ email)会返回NULL而不是失败消息或数组或标题代码。

我可以执行哪些步骤来调试它?

这是我正在尝试的(在定义'get'本身的代码中):

function get($email) {
    echo $this->_subscribers_base_route.'.json?email='.urlencode($email).'<br />';
    $response = $this->get_request($this->_subscribers_base_route.'.json?email='.urlencode($email));
    echo file_get_contents('php://input');
    echo '<br />';
    var_dump($response);
    return $response;
        //return $this->get_request($this->_subscribers_base_route.'.json?email='.urlencode($email));
}

这是返回NULL的内容。在add和get的情况下,为实例化提供了相同的参数。

我很难找到一个很好的调试起点。

任何想法都会受到赞赏。

由于

1 个答案:

答案 0 :(得分:2)

file_get_contents的调用将转储当前正在执行的HTTP请求的主体,即在您的服务器上执行的请求。如果是GET请求,则为空,如果是POST请求,则为已发布的数据。这不会转储与Campaign Monitor API调用相关的任何数据。

包装器可以记录与api请求相关的调试信息。您可以通过以下方式构造包装器对象来启用日志记录

$wrap = new CS_REST_Subscribers('Your list ID', 'Your API Key', 'https', CS_REST_LOG_VERBOSE);

这将回显呼叫中发送和接收的数据。

如果您仍然无法与support取得联系,包括您的API密钥和使用包装器的代码。