AJAX 请求:/wp-admin/admin-ajax.php 403
Posted
技术标签:
【中文标题】AJAX 请求:/wp-admin/admin-ajax.php 403【英文标题】:AJAX-Request: /wp-admin/admin-ajax.php 403 【发布时间】:2020-01-13 17:12:13 【问题描述】:我创建了一个用于计算成本的 wordpress 插件。该表单只有一个输入字段和一个提交按钮。在提交表单时,我想创建一个 ajax 请求。所以,我调用 /wp-admin/admin-ajax.php-Url,但我得到了禁止错误代码 403。我认为 htaccess 中的条目是错误的,但是在更改文件后我得到了同样的错误和重启服务器。
你知道这里发生了什么吗?
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
RewriteRule . /index.php [L]
# admin-ajax.php & post.php skip/bypass rule
RewriteCond %REQUEST_URI (admin-ajax\.php|post\.php) [NC]
RewriteRule . - [S=2]
</IfModule>
# END WordPress
【问题讨论】:
【参考方案1】:如果您没有声明允许 ajax 调用,则会出现 403 禁止错误。
//allow this particular AJAX function for logged in users
add_action('wp_ajax_myajax', 'myajax');
//allow this particular AJAX function for non-logged in users
add_action('wp_ajax_nopriv_myajax', 'myajax');
function myajax()
//your code
【讨论】:
感谢您的提示!!!我还声明了 ajax 调用,但参数有一些拼写错误。【参考方案2】:对我有用的是在服务器上禁用 mod sec!
【讨论】:
也为我工作以上是关于AJAX 请求:/wp-admin/admin-ajax.php 403的主要内容,如果未能解决你的问题,请参考以下文章