通过AJAX将表单数据发布到设置API是否安全?我是不是遗漏了什么?

时间:2013-04-13 作者:ansh

在我的Wordpress管理员中,我使用设置API设置了主题选项。我正在尝试使用Ajax保存主题选项表单,以便页面不会刷新。我只需要添加以下jQuery代码:

$("#cgform").submit(function() {
    var form_data = $(\'#cgform input\').serializeArray();
    $.post( \'options.php\', form_data ).error(function() {
            alert(\'error\');
        }).success( function() {
            alert(\'success\');   
        });
    return false; 
});
我想知道这样做是否安全?我知道设置api会处理nonce字段,但我想确定这样做是否安全。如果有人能为我提供将设置api与Ajax结合使用的“最佳实践”,那就太好了。

1 个回复
SO网友:Rarst

WordPress本机不使用Ajax提交和设置API,因此没有真正的最佳实践。我记得SCBFramew有这样的选项,但它被删除了。

本质上,这种提交没有什么比这更不安全的了,无论提交方法如何,都应该将表单数据视为不受信任的数据,并在PHP后端对其进行适当的清理和验证(任何清理或验证客户端都很方便,不能依赖于安全性)。

结束

相关推荐

对登录用户和AJAX更新进行缓存

我想为登录用户和新用户提供页面缓存版本的主页。然后使用Ajax适当地更新内容,例如,如果用户已经对一篇文章投了赞成票,则相关按钮将与其他按钮不同。由于我是wordpress的新手,我想知道是否有任何方法或合适的插件来实现这一目标。或者,我可以使用Ajax只更新页面的某些部分,例如,在当前页面上发布meta吗?