使用POST的PHRets

时间:2014-03-17 17:23:06

标签: php curl

我正在使用PHRets并尝试返回一些搜索结果。下面是代码,这是非常基础的,应该可以工作:

include('../include/common.php');
include('../classes/phrets.php');

$rets = new phRETS();

$connect = $rets->connect(RETS_LOGIN_URL, RETS_USERNAME, RETS_PASSWORD);
if($connect){
    $search = $rets->SearchQuery('PROPERTY', 'RES', '((COUNTY=Dallas))', array('LIMIT'=>20));
    print_r($rets->Error());
    echo $rets->TotalRecordsFound($search);
    $rets->Disconnect();

}else{
    $error = $rets->Error();
    print_r($error);
}

当我运行该页面时,收到以下错误:

Array ( [type] => rets [code] => 20203 [text] => The request limit is too large for a GET. Please use the POST method to submit your search. ) 0

我没有看到强制PHRets将请求作为POST发送的参数。这需要上课,还是我错过了什么?

由于

编辑:我刚从开发人员那里听到回复。目前不支持它。也许一个不那么忙碌的人应该克隆它并继续努力.. :)无论如何,如果有人已经修改了代码来使这项工作,请告诉我。

2 个答案:

答案 0 :(得分:3)

here获取支持POST方法的最新phRETS版本,并替换为旧的phrets.php。

然后你需要在脚本中添加一行额外的行

$rets->SetParam('use_post_method', true);

注意:默认情况下,它将是GET方法。

答案 1 :(得分:1)

我发布了一个支持POST搜索的更新版本https://github.com/nathanklick/PHRETS或通过编辑器将"nathanklick/phrets": "1.0.2"添加到您的composer.json文件中。