2020-11-01 / 3567阅
WordPress的AJAX接口提示是公开的,ACTION参数也是大家都知道,可以查看源代码获得,为了避免被他人使用软件或者远程提交表单,造成各种安全问题。
所以我们需要在AJAX的时候提交一个随机数作为用户识别,类似CSRF保护,可以防止跨域请求AJAX接口。
生成随机数
<?php echo wp_create_nonce('code');?> 然后后端验证随机数
wp_verify_nonce($_POST['code'], 'code') //通过返回true,错误返回false
验证通过以后,我们在做其他的操作,如果没有通过,可能是跨域提交。
<script>
var ajax_url ="<?php echo admin_url( 'admin-ajax.php');?>"; //这一句需要写在PHP文件中
jQuery(document).ready(function ($) {
console.log('悠然自学,乐在其中');
$.ajax({
type: "POST",
url: ajax_url, //地址
data: {
action: "youran_api",
data:'20202020',
'code':'<?php echo wp_create_nonce('code');?>'
},
success: function (back) {
console.log(back);
}
});
});
</script> 阅读文章或者观看视频过程中有任何问题,请下方留言或者联系我Q248758228