我花了很多时间寻找解决此问题的方法。我在google和stackexchange上浏览过,但没有得到答案。
所以我正在寻找解决方案,是通过我正在开发的插件发出ajax请求时,我遇到了这个400状态错误。 我不知道为什么要得到这个?
function smn_admin_assets($page_now){
if( $page_now == "settings_page_smn_notice" ){
wp_enqueue_style( 'smn-admin-style', plugins_url( "../assets/admin/admin.css", __FILE__ ) );
wp_enqueue_script( 'smn-admin-js', plugins_url( "../assets/admin/admin.js", __FILE__), array( 'jquery' ), VERSION, true );
$pass_value = array(
'url' => admin_url( 'admin-ajax.php' ),
'cookieNonce' => wp_create_nonce('cookieNonce')
);
wp_localize_script('smn-admin-js', 'smn_ajax', $pass_value );
}
}
add_action( 'admin_enqueue_scripts', 'smn_admin_assets' );
$(document).ready(function () {
$("#clearCookie").on('click', function(){
var clearCookie = $('#clearCookie').val();
// Ajax Call
$.ajax({
url : smn_ajax.url,
type : 'POST',
data : {
action : 'smn_clear_cookie',
clearcookie : clearCookie
},
success : function( response ) {
alert('Hello');
},
error: function () {
alert(smn_ajax.url);
}
});
return false;
});
});
function smn_clearCookie(){
$clearCookie = $_POST['clearCookie'];
var_dump($clearCookie);
die();
}
add_action( 'wp_ajax_smn_clear_cookie', 'smn_clearCookie' );
add_action( 'wp_ajax_nopriv_smn_clear_cookie', 'smn_clearCookie' );
让我知道为什么我会收到此错误; 谢谢您的宝贵时间。
答案 0 :(得分:0)
400错误表明我们正在传递错误参数。我认为:
var clearCookie = $('#clearCookie').val();
可以为空。您可以检查何时在#clearCookie
处分配一个值。