Я злюсь, потому что, будучи администратором WordPress, на внешнем интерфейсе (не на портале администратора) я не могу делать запросы на публикацию / размещение. Простой запрос GET AJAX отлично работает без каких-либо учетных данных:
axios.get(this.page.url + "/wp-json/wp/v2/posts").then((resp) => {
console.info(resp.data);
});
НО, когда я пытаюсь сделать почтовые запросы, я всегда получаю ошибку 401, если я не включаю одноразовый номер. Если я включаю одноразовый номер, я получаю 403. Пробовал как с AXIOS, так и с JQUERY:
// Axios:
axios.defaults.withCredentials = true;
axios.defaults.headers.post["X-WP-Nonce"] = MYSCRIPT.nonce; // for POST request
axios
.post(this.page.url + "/wp-json/wp/v2/posts", {
title: "title",
content: "content",
status: "publish",
})
.then(function (response) {
console.info(response);
})
.catch(function (error) {
console.info(error);
});
// JQUERY
$.ajax({
url: this.page.url + "/wp-json/wp/v2/posts",
type: "post",
data: {
title: "title",
content: "content",
status: "publish",
},
headers: {
"X-WP-Nonce": MYSCRIPT.nonce, //If your header name has spaces or any other char not appropriate
},
dataType: "json",
success: function (data) {
console.info(data);
},
});
Nonce просто генерируется с помощью:
<script>
<?php echo 'const MYSCRIPT = ' . json_encode(
array('nonce' => wp_create_nonce('wp-rest'))
); ?>
</script>
Я знаю, что это не очень хорошая практика, и я включу ее должным образом, как только заставлю ее работать. Nonce отлично извлекается Javascript, но я получаю 403 от wordpress... Не знаю, как поступить!

Действие, указанное в wp_create_nonce, должно быть wp_rest (подчеркивание), а не wp-rest (дефис).
https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/
Для разработчиков, выполняющих Ajax-запросы вручную, одноразовый номер необходимо будет передавать с каждым запросом. API использует одноразовые номера с установленным действием wp_rest.
Замените wp-rest на wp_rest, и все должно работать правильно.
@Мауро, нет проблем, все делают ошибки. Не стесняйтесь принять мой ответ, если считаете, что он был полезен.
Вау, спасибо, приятель, теперь работает как шарм ... Я чувствую себя очень глупо!