我有一个Magento观察者,我想使用一些curl - 基本上我想使用与下面的jQuery AJAX调用相同的请求,但将其转换为我的观察者函数中的cURL事件。
$('#org_search_term').autocomplete({
serviceUrl: '<?php echo $this->getUrl('rp/organisation/search', array('_secure' => true)) ?>',
paramName:'term',
minChars: 3,
deferRequestBy: 500,
dataType: 'json',
transformResult: function (response) {
var results = { suggestions:[] };
if (!response.totalRecords)
return false;
$.each(response.items, function(i, item){
results.suggestions.push({
value: item.organisation_name+', '+item.street+', '+item.town+', '+item.county+', '+item.postcode+', '+item.country,
data: item.organisation_id
});
});
return results;
}
});
答案 0 :(得分:1)
这会有用吗?我的意思是,我认为你的ajax请求没有什么特别之处。
<?php
$opts = array(
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 60,
CURLOPT_USERAGENT => 'My-Magento-Observer',
CURLOPT_SSL_VERIFYPEER => False,
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
),
CURLOPT_URL => $this->getUrl('rp/organisation/search', array('_secure' => true)),
CURLOPT_POSTFIELDS = array(
'paramName' => 'term',
),
);
$ch = curl_init();
curl_setopt_array($opts);
$result = curl_exec($ch);
if ($errno = curl_errno($ch)) {
$error = curl_error($ch);
echo $error;
}
else {
echo $result;
}
curl_close($ch);