我正在创建一个插件。我知道如果我通过wordpress admin-ajax.php
调用ajax,我应该使用wp_create_nonce
来保护安全。
但我怎么只通过ajax中的php文件url调用该函数?那更快。我想知道,为了安全起见,我应该通过admin-ajax.php
进行ajax调用,还是可以调用普通的php文件网址?
答案 0 :(得分:0)
在ajax中调用带有标准php文件url的函数可能更快,但问题是你看到,php文件中的函数可以从任何地方通过ajax调用。
但另一方面,WordPress有一个内置系统,用于验证ajax请求是否来自您的网站或其他网站。每当您使用wp_create_nonce
时,WordPress都会创建一个验证码并将其发送到仅限您的网站中的任意页面,这是因为所请求的页面位于您的网站中。然后,WordPress使用该号码与创建的初始号码(also known as the nonce)
进行交叉检查。
因此使用wp_create_nonce
非常安全,这也是最佳做法。