javascript - 使用 wp_ajax 拨打电话时,我在 Wordpress 中遇到 400 Bad request 错误
问题描述
我正在一个 Wordpress 项目中工作,我想在我的网站中通过 ajax 加载一些东西。我正在通过 ajax 加载许多部分,但我以前从未遇到过错误。在这里,我也在做应该做的一切,但我不知道为什么会收到 400 bad request 错误。这是代码:
if(!function_exists('enque_this')){
function enque_this(){
wp_enqueue_style( 'style-name', MY_PLUGIN_LOCATION.'css/style.css');
wp_enqueue_script('my_script_file',MY_PLUGIN_LOCATION.'js/md-referral.js','jQuery','',true);
wp_localize_script('my_script_file','ajax_object',array('ajax_url' => admin_url('admin-ajax.php'),'we_value'=>1234));
}}
add_action('wp_enqueue_scripts','enque_this');
if(!function_exists('enque_single_prod_page')){
function enque_single_prod_page(){
wp_enqueue_script('my_script_file_2nd',MY_PLUGIN_LOCATION.'js/md-single.js','jQuery','',true);
}}
add_action('wp_enqueue_scripts','enque_single_prod_page');
function how_much_dis(){
echo 'really .. . .!!! i Got SomeTHing ??';
};
add_action('wp_ajax_how_much_dis','how_much_dis');
jQuery代码
jQuery(document).on("click","#submit_reff_code",function(){
var codes = jQuery("#input_reff_code").val();
var button_text = jQuery("#submit_reff_code").val("Please Wait . . .");
var is_disabled = jQuery('[name="add-to-cart"]').prop('disabled');
var product_id = jQuery('[name="add-to-cart"]').val();
var variation_id = jQuery('[name="variation_id"]').val();
if( codes != "" && codes.length > 2 && is_disabled == false && jQuery.isNumeric(product_id)){
var data = {
'action' : 'how_much_dis',
'product_id_from_prod' : product_id,
'variation_id_from_prod': variation_id,
'code' : codes
};
jQuery.post(ajax_object.ajax_url, data , function(response){
console.log(response);
});
}else{
alert("please enter valid code");
};
});
谢谢你的帮助,thanxx
解决方案
400 表示操作错误。问题中的代码应该在用户登录时工作。要使其在用户未登录时工作,您必须添加该行
add_action('wp_ajax_nopriv_how_much_dis','how_much_dis');
也许这就是原因。
推荐阅读
- oauth-2.0 - Spring sercurity中的自定义JWT响应
- reactjs - 笑话:等待 componentDidMount 中异步方法的调用 .then
- python - 使用 pandas python 获取用户输入并搜索 csv
- angular - 无法在 Angular 中重新格式化日期变量
- laravel - 图像像公共文件夹中的 tmp 文件一样保存
- c# - 将 .NET Core 项目编译为 .exe 文件而不是 .dll 文件
- gunicorn - WebSocket 连接失败:WebSocket 握手期间出错:意外响应代码:200
- javascript - 如何动态更新 div 以添加嵌入的推文,然后是其他 HTML 元素
- r - 在R闪亮中更新ActionButton单击事件的绘图输出
- python-3.x - 如何将 Excel 工作表中的 numpy 浮点数组乘以常数?