5
我在Wordpress插件中遇到wp_remote_get
問題。在wordpress插件中使用wp_remote_get時Ajax調用失敗
我想要做的是調用我的主要公共類中的方法與Ajax。但問題是,當使用wp_remote_get
函數時,呼叫失敗。它應該做一個API調用並將數據返回給jQuery。當我註釋掉wp_remote_get
時,該通話正常工作,並且回覆回覆。任何想法我怎麼能做這項工作?
方法處理呼叫:
public function countryLookupApiCall() {
if (isset($_POST['action']) && isset($_POST['country'])) {
$country = $_POST['country'];
$apiKey = $this->getApiKey();
$url = $this->url . $country . '/callCharges?apiKey=' . $apiKey . '&response=JSON';
$response = wp_remote_get($url);
echo $response;
die();
}
}
的jQuery:
jQuery(document).ready(function() {
jQuery("#countryLookupForm").submit(function(e){
var country = jQuery("#selectCountry").val();
var action = 'countryLookupResponse';
jQuery.ajax ({
type: 'POST',
url: countryLookup.ajaxurl,
dataType: 'json',
data: {action: action, country: country},
success: function(data) {
//do something with this data later on
var result = jQuery.parseJSON(data);
}
});
});
});
WordPress的動作都註冊好,因爲通話的作品時,我不使用wp_remote_get
編輯: 解決方案不僅僅簡單,我只需要添加e.preventDefault();
的問題是,AJAX調用失敗完全如果包括wp_remote_get,只要我刪除電話的工作就好了。我認爲這可能是某種衝突。 – Danijelb
呃...比你需要在你的PHP配置中啓用錯誤報告並設置錯誤報告級別來調試。這會讓你確切的錯誤進一步移動。 'error_reporting(E_ALL); ini_set(「display_errors」,1);' – alexeevdv