问题描述

除非我通过 exit()die()结束 Ajax 处理功能,否则 Ajax 函数接收所需和正确的输出,但遵循 0

任何想法为什么会发生?

这是否是这样的,或者可以解决?

add_action('wp_ajax_get_homepage', 'get_homepage');
add_action('wp_ajax_nopriv_get_homepage', 'get_homepage');

function get_homepage(){
    echo "get_homepage ->";
    exit();
}

我在 AJAX in Plugins 阅读,但为什么这是必要的?

最佳解决方案

admin-ajax.php 的默认响应是,

die( '0' );

… 通过在返回所需内容后添加自己的 exit()die(),可以防止 admin-ajax.php 的默认响应也被返回。

它通常也意味着你的 ajax 调用成功了。

最终,为了回答你的问题,这意味着这样工作。返回您的内容后退出的内容是正确的。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。