还是这打破了我不太理解的暂时性的目的
例如,在页面加载时运行的两个ajax请求上,或者在单击某个对象时:
$.ajax({
type: \'post\',
url: \'admin-ajax.php\',
data: { action: \'foo\',
_ajax_nonce: \'<?php echo $nonce; ?>\' }
});
$.ajax({
type: \'post\',
url: \'admin-ajax.php\',
data: { action: \'foo2\',
_ajax_nonce: \'<?php echo $nonce; ?>\' }
});
最合适的回答,由SO网友:Naoise Golden 整理而成
这个WordPress nonce creation function 只能在init
挂钩:
使用init或任何后续操作调用此函数。在操作之外调用它可能会导致麻烦。看见#14024 有关详细信息。
自init
钩子“在WordPress完成加载后但在发送任何标题之前运行”,在每个整页请求(不是ajax请求)上创建nonce。因此,从技术上讲,您可以在多个请求上使用相同的nonce,但是you should make them unique on each request, 正如其他答案所指出的那样。
要进一步了解nonce是什么:
Nonces are sent on each Ajax request as a security token, 以确保该请求是用户有意提出的。