问题是因为我没有生成和发送nonce 请求的值。为了生成nonce 价值本地化a的值wp_create_nonce(\'wp_rest\') 函数调用。
wp_localize_script(\'application\', \'api\', array(
\'root\' => esc_url_raw(rest_url()),
\'nonce\' => wp_create_nonce(\'wp_rest\')
));
然后可以访问
window 可通过Javascript访问的浏览器的对象
nonce 然后应作为请求标头的值传递
X-WP-Nonce 执行XHR/HTTP请求时。其示例如下:
var request = new XMLHttpRequest();
request.addEventListener(\'load\', function() {
console.log(this.responseText);
}
request.open(\'GET\', api.root + \'mynamespace/posts\');
// You must set headers after the request has been opened and before itself.
request.setRequestHeader(\'X-WP-Nonce`, api.nonce);
request.send(); // will fire the event listener above when fulfilled.
我希望这是有帮助的。