jQuery:
jQuery.ajax
({
url: ajaxurl,
type: 'POST',
data: {
action: 'shipping_data',
},
processData: false,
success: function(data)
{
alert(data);
},
error: function(data)
{
alert("failed.");
}
});
.PHP:
function shipping_data()
{
// Testing for now.
$requestParams = array(
'CityName' => 'Berlin',
'CountryName' => 'Germany'
);
$client = new SoapClient('http://www.webservicex.net/globalweather.asmx?WSDL');
echo $response = $client->GetWeather($requestParams);
die();
}
add_action( 'wp_ajax_shipping_data', 'shipping_data' );
add_action( 'wp_ajax_nopriv_shipping_data', 'shipping_data' );
我使用 processData: false,
并得到响应 0。在我得到失败的响应之前。为什么我无法收到请求?如果我在shipping_data
函数之外使用 SOAP,那么我可以得到响应。但是我想在shipping_data
函数(称为使用 ajax)中使用任何帮助吗?
0 是 ajax 的默认错误代码,不管你做什么,这是一个硬编码错误。大多数时候,当你使用die();它会破坏一切,尝试用
exit;